public void EditGetAction_ValidGameResultId_GameResultViewModelIsReturned()
        {
            // Arrange
            _teamServiceMock.Setup(ts => ts.Get()).Returns(new List <Team>());
            var testData = new GameServiceTestFixture().TestGameResults().Build();

            var expected = new GameResultViewModelBuilder()
                           .WithTournamentId(TOURNAMENT_ID)
                           .WithAwayTeamName("TeamNameB")
                           .WithHomeTeamName("TeamNameA")
                           .WithId(GAME_RESULTS_ID)
                           .WithSetsScore(3, 2)
                           .WithSetScores(new List <ScoreViewModel>
            {
                new ScoreViewModel(25, 20),
                new ScoreViewModel(24, 26),
                new ScoreViewModel(28, 30),
                new ScoreViewModel(25, 22),
                new ScoreViewModel(27, 25),
            })
                           .Build();

            SetupGet(TOURNAMENT_ID, testData.ElementAt(0));

            var controller = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <GameResultViewModel>(controller.Edit(TOURNAMENT_ID));

            // Assert
            TestHelper.AreEqual <GameResultViewModel>(expected, actual, new GameResultViewModelComparer());
        }
Пример #2
0
        public void Details_ExistingTeam_TeamViewModelIsReturned()
        {
            // Arrange
            var team    = CreateTeam();
            var captain = CreatePlayer(SPECIFIED_PLAYER_ID);
            var roster  = new PlayerServiceTestFixture()
                          .TestPlayers()
                          .AddPlayer(captain)
                          .Build();

            MockTeamServiceGetTeam(team);
            _teamServiceMock.Setup(ts => ts.GetTeamCaptain(It.IsAny <Team>())).Returns(captain);
            _teamServiceMock.Setup(ts => ts.GetTeamRoster(It.IsAny <TeamId>())).Returns(roster.ToList());
            SetupRequestRawUrl("/Teams");
            var sut = BuildSUT();

            SetupControllerContext(sut);

            var expected = CreateViewModel();

            // Act
            var actual = TestExtensions.GetModel <TeamRefererViewModel>(sut.Details(SPECIFIED_TEAM_ID));

            // Assert
            TestHelper.AreEqual <TeamViewModel>(expected, actual.Model, new TeamViewModelComparer());
            Assert.AreEqual(actual.CurrentReferrer, sut.Request.RawUrl);
        }
Пример #3
0
        public void EditGetAction_TeamId_TeamViewModelIsReturned()
        {
            var team    = CreateTeam();
            var captain = CreatePlayer(SPECIFIED_PLAYER_ID);
            var roster  = new PlayerServiceTestFixture()
                          .TestPlayers()
                          .AddPlayer(captain)
                          .Build();

            MockTeamServiceGetTeam(team);
            _teamServiceMock.Setup(ts => ts.GetTeamCaptain(It.IsAny <Team>())).Returns(captain);
            _teamServiceMock.Setup(ts => ts.GetTeamRoster(It.IsAny <TeamId>())).Returns(roster.ToList());

            var sut = BuildSUT();

            SetupControllerContext(sut);

            var expected = CreateViewModel();

            // Act
            var actual = TestExtensions.GetModel <TeamViewModel>(sut.Edit(SPECIFIED_TEAM_ID));

            // Assert
            TestHelper.AreEqual <TeamViewModel>(expected, actual, new TeamViewModelComparer());
        }
Пример #4
0
        public void Standings_LastUpdateTimeExists_StandingsReturnLastUpdateTime()
        {
            // Arrange
            var LAST_UPDATE_TIME = new DateTime(2017, 4, 5, 12, 4, 23);

            var testPivotStandings = new PivotStandingsTestFixture().WithMultipleDivisionsAllPossibleScores()
                                     .WithLastUpdateTime(LAST_UPDATE_TIME).Build();
            var testStandings = new StandingsTestFixture().WithMultipleDivisionsAllPossibleScores()
                                .WithLastUpdateTime(LAST_UPDATE_TIME).Build();

            var expected = new StandingsViewModelBuilder().WithMultipleDivisionsAllPossibleScores()
                           .WithLastUpdateTime(LAST_UPDATE_TIME).Build();

            SetupIsStandingsAvailableTrue(TOURNAMENT_ID);
            SetupGameReportGetStandings(TOURNAMENT_ID, testStandings);
            SetupGameReportGetPivotStandings(TOURNAMENT_ID, testPivotStandings);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <StandingsViewModel>(sut.Standings(TOURNAMENT_ID, TOURNAMENT_NAME));

            // Assert
            TestHelper.AreEqual(expected, actual, new StandingsViewModelComparer());
        }
Пример #5
0
        public void Decline_AnyRequest_MessageViewModelIsReturned()
        {
            // Arrange
            var expected = SetupMessageViewModel();
            var sut      = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <MessageViewModel>(sut.Decline(REQUEST_ID));

            // Assert
            TestHelper.AreEqual <MessageViewModel>(expected, actual, new MessageViewModelComparer());
        }
Пример #6
0
        public void CreateGetAction_GetView_ReturnsViewWithDefaultData()
        {
            // Arrange
            var sut      = BuildSUT();
            var expected = new PlayerViewModel();

            // Act
            var actual = TestExtensions.GetModel <PlayerViewModel>(sut.Create());

            // Assert
            Assert.Equal <PlayerViewModel>(expected, actual, new PlayerViewModelComparer());
        }
Пример #7
0
        public void TournamentDetails_ExistingTournament_TournamentViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestTournament(TEST_TOURNAMENT_ID);
            var expected = MakeTestTournamentViewModel(TEST_TOURNAMENT_ID);

            MockTournamentServiceGetTournament(TEST_TOURNAMENT_ID, testData);
            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <TournamentViewModel>(sut.TournamentDetails(TEST_TOURNAMENT_ID));

            // Assert
            TournamentViewModelComparer.AssertAreEqual(expected, actual);
        }
Пример #8
0
        public void EditPostAction_InvalidPlayerViewModel_PlayerViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestPlayerViewModel();
            var sut      = BuildSUT();

            sut.ModelState.AddModelError(string.Empty, string.Empty);

            // Act
            var result = TestExtensions.GetModel <PlayerViewModel>(sut.Edit(testData));

            // Assert
            VerifyEdit(Times.Never());
            result.Should().NotBeNull(ASSERT_FAIL_VIEW_MODEL_MESSAGE);
        }
Пример #9
0
        public void UserDetails_ExistingUser_UserReturned()
        {
            // Arrange
            var expected = GetUser();

            SetupUserService(USER_ID);
            var sut = BuildSUT();

            // Act
            var actionResult = sut.UserDetails(USER_ID);
            var actual       = TestExtensions.GetModel <User>(actionResult);

            // Assert
            Assert.Equal <User>(expected, actual, new UserComparer());
        }
Пример #10
0
        public void PlayerDetails_ExistingPlayer_PlayerReturned()
        {
            // Arrange
            var expected = GetPlayer();

            SetupPlayerService(PLAYER_ID);
            var sut = BuildSUT();

            // Act
            var actionResult = sut.PlayerDetails(PLAYER_ID);
            var actual       = TestExtensions.GetModel <Player>(actionResult);

            // Assert
            Assert.Equal <Player>(expected, actual, new PlayerComparer());
        }
Пример #11
0
        public void Standings_StandingsForPlayoffScheme_StandingsNotAvailableReturned()
        {
            // Arrange
            var expected = new StandingsViewModelBuilder().WithStandingsNotAvailableMessage().Build();

            SetupIsStandingsAvailableFalse(TOURNAMENT_PLAYOFF_ID);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <StandingsViewModel>(sut.Standings(TOURNAMENT_PLAYOFF_ID, TOURNAMENT_NAME));

            // Assert
            TestHelper.AreEqual(expected, actual, new StandingsViewModelComparer());
        }
Пример #12
0
        public void UserDetails_ExistingUser_UserViewModelIsReturned()
        {
            // Arrange
            var user = CreateUser();

            MockUserServiceGetUserDetails(USER_ID, user);

            var sut      = BuildSUT();
            var expected = CreateUserViewModel();

            // Act
            var actual = TestExtensions.GetModel <UserViewModel>(sut.UserDetails(USER_ID));

            // Assert
            TestHelper.AreEqual <UserViewModel>(expected, actual, new Comparers.UserViewModelComparer());
        }
        public void TournamentResults_TournamentResultsRequested_TournamentResultsReturned()
        {
            // Arrange
            var testTournamentResults = new GameServiceTestFixture().TestGameResults().Build();
            var expected = new TournamentResultsViewModelBuilder().Build();

            SetupGameResultsGetTournamentResults(TOURNAMENT_ID, testTournamentResults);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <TournamentResultsViewModel>(sut.TournamentResults(TOURNAMENT_ID, TOURNAMENT_NAME));

            // Assert
            TestHelper.AreEqual(expected, actual, new TournamentResultsViewModelComparer());
        }
        public void UserDetails_ExistingUser_UserViewModelIsReturned()
        {
            // Arrange
            var user = CreateUser();

            SetupGetUserDetails(EXISTING_ID, user);

            var sut      = BuildSUT();
            var expected = CreateUserViewModel();

            // Act
            var actual = TestExtensions.GetModel <UserViewModel>(sut.UserDetails(EXISTING_ID));

            // Assert
            Assert.Equal <UserViewModel>(expected, actual, new UserViewModelComparer());
        }
Пример #15
0
        public void EditGetAction_ExistingPlayer_PlayerViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestPlayer(TEST_PLAYER_ID);
            var expected = MakeTestPlayerViewModel(TEST_PLAYER_ID);

            SetupGet(TEST_PLAYER_ID, testData);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <PlayerViewModel>(sut.Edit(TEST_PLAYER_ID));

            // Assert
            Assert.Equal(expected, actual, new PlayerViewModelComparer());
        }
Пример #16
0
        public void EditPostAction_ValidPlayerViewModelWithValidationException_PlayerViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestPlayerViewModel();

            SetupEditThrowsValidationException();

            var sut = BuildSUT();

            // Act
            var result = TestExtensions.GetModel <PlayerViewModel>(sut.Edit(testData));

            // Assert
            VerifyEdit(Times.Once());
            result.Should().NotBeNull(ASSERT_FAIL_VIEW_MODEL_MESSAGE);
        }
        public void CreatePostAction_ValidPlayerViewModelWithValidationException_PlayerViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestPlayerViewModel();

            SetupCreateThrowsValidationException();

            var sut = BuildSUT();

            // Act
            var result = TestExtensions.GetModel <PlayerViewModel>(sut.Create(testData));

            // Assert
            VerifyCreate(Times.Once());
            Assert.IsNotNull(result, ASSERT_FAIL_VIEW_MODEL_MESSAGE);
        }
        public void Index_GetAllContributors_AllContributorsAreReturned()
        {
            // Arrange
            var testData = MakeTestContributorTeams();
            var expected = MakeTestContributorTeamViewModels(testData);

            SetupGetAll(testData);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <IEnumerable <ContributorsTeamViewModel> >(sut.Index()).ToList();

            // Assert
            CollectionAssert.AreEqual(expected, actual, new ContributorTeamViewModelComparer());
        }
        public void CreateGetAction_GameResultViewModelRequested_GameResultViewModelIsReturned()
        {
            // Arrange
            _teamServiceMock.Setup(ts => ts.Get()).Returns(new List <Team>());
            var expected = new GameResultViewModel
            {
                TournamentId = TOURNAMENT_ID
            };

            var controller = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <GameResultViewModel>(controller.Create(TOURNAMENT_ID));

            // Assert
            TestHelper.AreEqual <GameResultViewModel>(expected, actual, new GameResultViewModelComparer());
        }
        public void EditPostAction_InvalidGameResultViewModel_GameResultViewModelIsReturned()
        {
            // Arrange
            var testData       = CreateResultViewModel();
            var expectedResult = CreateExpectedResult();

            var sut = BuildSUT();

            sut.ModelState.AddModelError(string.Empty, string.Empty);

            // Act
            var result = TestExtensions.GetModel <GameResultViewModel>(sut.Edit(testData));

            // Assert
            VerifyEditGameResult(expectedResult, Times.Never());
            Assert.IsNotNull(result, ASSERT_FAIL_VIEW_MODEL_MESSAGE);
        }
Пример #21
0
        public void Details_ExistingPlayer_PlayerViewModelIsReturned()
        {
            // Arrange
            var testData = MakeTestPlayer(TEST_PLAYER_ID);
            var expected = MakeTestPlayerViewModel(TEST_PLAYER_ID);

            SetupGet(TEST_PLAYER_ID, testData);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <PlayerRefererViewModel>(sut.Details(TEST_PLAYER_ID));

            // Assert
            Assert.Equal <PlayerViewModel>(expected, actual.Model, new PlayerViewModelComparer());
            VerifyGetAllowedOperation(_allowedOperationDetails, Times.Once());
        }
Пример #22
0
        public void Index_FeedbacksExist_AllFeedbacksReturned()
        {
            // Arrange
            var feedbacks = GetFeedbacks();
            var expected  = GetRequestsViewModels();

            _feedbacksServiceMock.Setup(r => r.Get()).Returns(feedbacks);

            var sut = BuildSut();

            // Act
            var actionResult = sut.Index();

            // Assert
            var actual = TestExtensions.GetModel <List <RequestsViewModel> >(actionResult);

            CollectionAssert.AreEqual(expected, actual, new RequestsViewModelComparer());
        }
        public void EditPost_MissingEntityException_RedirectToGameResultViewModel()
        {
            // Arrange
            var gameResultViewModel = CreateResultViewModel();
            var expectedResult      = CreateExpectedResult();

            _gameServiceMock.Setup(grs => grs.EditGameResult(It.IsAny <Game>()))
            .Throws(new MissingEntityException());

            var sut = BuildSUT();

            // Act
            var result = TestExtensions.GetModel <GameResultViewModel>(sut.Edit(gameResultViewModel));

            // Assert
            VerifyEditGameResult(expectedResult, Times.Once());
            Assert.IsNotNull(result, ASSERT_FAIL_VIEW_MODEL_MESSAGE);
        }
Пример #24
0
        public void Details_FeedbackWithReplies_DetailsModelReturned()
        {
            // Arrange
            const int FEEDBACK_ID = 1;
            var       feedback    = GetAnyFeedback(FEEDBACK_ID);

            MockGetFeedback(FEEDBACK_ID, feedback);
            var expected = new RequestsViewModel(feedback);

            var sut = BuildSut();

            // Act
            var actionResult = sut.Details(FEEDBACK_ID);

            // Assert
            var actual = TestExtensions.GetModel <RequestsViewModel>(actionResult);

            AreDetailsModelsEqual(expected, actual);
        }
        CreateGetAction_UserIsAuthentificated_UsersEmailPrepolulated()
        {
            // Arrange
            SetupCurrentUserGetId(TEST_ID);

            _userServiceMock.Setup(us => us.GetUser(TEST_ID))
            .Returns(new User {
                Email = TEST_MAIL
            });

            var sut = BuildSUT();

            // Act
            var feedback = TestExtensions
                           .GetModel <FeedbackViewModel>(sut.Create());

            // Assert
            Assert.Equal(TEST_MAIL, feedback.UsersEmail);
        }
        public void CreatePostAction_InvalidModel_ExceptionThrown()
        {
            // Arrange
            var gameResult = new GameResultViewModelBuilder()
                             .WithTournamentId(TOURNAMENT_ID)
                             .WithHomeTeamId(HOME_TEAM_ID)
                             .WithAwayTeamId(HOME_TEAM_ID)
                             .Build();

            var sut = BuildSUT();

            _gameServiceMock.Setup(gr => gr.Create(It.IsAny <Game>())).Throws(new ArgumentException());
            _teamServiceMock.Setup(ts => ts.Get()).Returns(new List <Team>());

            // Act
            var actual = TestExtensions.GetModel <GameResultViewModel>(sut.Create(gameResult));

            // Assert
            TestHelper.AreEqual(actual, gameResult, new GameResultViewModelComparer());
        }
Пример #27
0
        public void Index_GetPlayersFromExistingPageNoSearchText_PlayersAreReturned()
        {
            // Arrange
            var testData = MakeTestPlayers();
            var expected = MakePlayerNameViewModels(testData);

            SetupGetAll(testData);

            var sut = BuildSUT();

            SetupControllerContext(sut);

            // Act
            var actual = TestExtensions.GetModel <PlayersListReferrerViewModel>(
                sut.Index(null, string.Empty)).Model.List;

            // Assert
            Assert.Equal(expected, actual, new PlayerNameViewModelComparer());
            VerifyGetAllowedOperations(_allowedOperationsIndex, Times.Once());
        }
Пример #28
0
        public void Standings_StandingsRequested_StandingsReturned()
        {
            // Arrange
            var testPivotStandings = new PivotStandingsTestFixture().WithMultipleDivisionsAllPossibleScores().Build();
            var testStandings      = new StandingsTestFixture().WithMultipleDivisionsAllPossibleScores().Build();

            var expected = new StandingsViewModelBuilder().WithMultipleDivisionsAllPossibleScores().Build();

            SetupIsStandingsAvailableTrue(TOURNAMENT_ID);
            SetupGameReportGetStandings(TOURNAMENT_ID, testStandings);
            SetupGameReportGetPivotStandings(TOURNAMENT_ID, testPivotStandings);

            var sut = BuildSUT();

            // Act
            var actual = TestExtensions.GetModel <StandingsViewModel>(sut.Standings(TOURNAMENT_ID, TOURNAMENT_NAME));

            // Assert
            TestHelper.AreEqual(expected, actual, new StandingsViewModelComparer());
        }
Пример #29
0
        public void TeamDetails_ExistingTeam_TeamViewModelIsReturned()
        {
            // Arrange
            var team    = CreateTeam();
            var captain = CreatePlayer(SPECIFIED_PLAYER_ID);
            var roster  = new PlayerServiceTestFixture()
                          .TestPlayers()
                          .AddPlayer(captain)
                          .Build();

            MockTeamServiceGetTeam(team);
            _teamServiceMock.Setup(ts => ts.GetTeamCaptain(It.IsAny <Team>())).Returns(captain);
            _teamServiceMock.Setup(ts => ts.GetTeamRoster(It.IsAny <int>())).Returns(roster.ToList());

            var sut      = BuildSUT();
            var expected = CreateTeamViewModel();

            // Act
            var actual = TestExtensions.GetModel <TeamViewModel>(sut.TeamDetails(SPECIFIED_TEAM_ID));

            // Assert
            TestHelper.AreEqual <TeamViewModel>(expected, actual, new TeamViewModelComparer());
        }
Пример #30
0
        public void Index_GetPlayersFromExistingPageWithSearchText_PlayersAreReturned()
        {
            // Arrange
            var testData = MakeTestPlayers();
            var expected = GetPlayerNameViewModelsWithPlayerName(MakePlayerNameViewModels(testData), PLAYER_NAME_TO_SEARCH);

            SetupGetAll(testData);
            SetupRequestRawUrl("/Players");

            var sut = BuildSUT();

            SetupControllerContext(sut);

            // Act
            var actual = TestExtensions.GetModel <PlayersListReferrerViewModel>(
                sut.Index(null, PLAYER_NAME_TO_SEARCH));

            var playersList = actual.Model.List;

            // Assert
            Assert.Equal(expected, playersList, new PlayerNameViewModelComparer());
            VerifyGetAllowedOperations(_allowedOperationsIndex, Times.Once());
            Assert.Equal(actual.Referer, sut.Request.RawUrl);
        }