示例#1
0
        public void CreateGet_ShouldReturnTeamSeasonCreateView()
        {
            // Arrange
            var teamSeasonsIndexViewModel   = A.Fake <ITeamSeasonsIndexViewModel>();
            var teamSeasonsDetailsViewModel = A.Fake <ITeamSeasonsDetailsViewModel>();
            var teamSeasonRepository        = A.Fake <ITeamSeasonRepository>();
            var sharedRepository            = A.Fake <ISharedRepository>();
            var testController = new TeamSeasonsAdminController(teamSeasonsIndexViewModel, teamSeasonsDetailsViewModel,
                                                                teamSeasonRepository, sharedRepository);

            // Act
            var result = testController.Create();

            // Assert
            result.ShouldBeOfType <ViewResult>();
        }
示例#2
0
        public async Task CreatePost_WhenModelStateIsValid_ShouldAddTeamSeasonToDataStoreAndRedirectToIndexView()
        {
            // Arrange
            var teamSeasonsIndexViewModel   = A.Fake <ITeamSeasonsIndexViewModel>();
            var teamSeasonsDetailsViewModel = A.Fake <ITeamSeasonsDetailsViewModel>();
            var teamSeasonRepository        = A.Fake <ITeamSeasonRepository>();
            var sharedRepository            = A.Fake <ISharedRepository>();
            var testController = new TeamSeasonsAdminController(teamSeasonsIndexViewModel, teamSeasonsDetailsViewModel,
                                                                teamSeasonRepository, sharedRepository);

            var teamSeason = new TeamSeason();

            // Act
            var result = await testController.Create(teamSeason);

            // Assert
            A.CallTo(() => teamSeasonRepository.AddAsync(teamSeason)).MustHaveHappenedOnceExactly();
            A.CallTo(() => sharedRepository.SaveChangesAsync()).MustHaveHappenedOnceExactly();
            result.ShouldBeOfType <RedirectToActionResult>();
            ((RedirectToActionResult)result).ActionName.ShouldBe <string>(nameof(testController.Index));
        }
示例#3
0
        public async Task CreatePost_WhenModelStateIsNotValid_ShouldReturnTeamSeasonCreateView()
        {
            // Arrange
            var teamSeasonsIndexViewModel   = A.Fake <ITeamSeasonsIndexViewModel>();
            var teamSeasonsDetailsViewModel = A.Fake <ITeamSeasonsDetailsViewModel>();
            var teamSeasonRepository        = A.Fake <ITeamSeasonRepository>();
            var sharedRepository            = A.Fake <ISharedRepository>();
            var testController = new TeamSeasonsAdminController(teamSeasonsIndexViewModel, teamSeasonsDetailsViewModel,
                                                                teamSeasonRepository, sharedRepository);

            var teamSeason = new TeamSeason();

            testController.ModelState.AddModelError("TeamName", "Please enter a team name.");

            // Act
            var result = await testController.Create(teamSeason);

            // Assert
            A.CallTo(() => teamSeasonRepository.AddAsync(teamSeason)).MustNotHaveHappened();
            A.CallTo(() => sharedRepository.SaveChangesAsync()).MustNotHaveHappened();
            result.ShouldBeOfType <ViewResult>();
            ((ViewResult)result).Model.ShouldBe(teamSeason);
        }