public void ItRequiresPlayerGameResults() { var builder = new PlayerDetailsViewModelBuilder(null, null); var exception = Assert.Throws <ArgumentException>(() => builder.Build(new PlayerDetails(), twitterMinionBraggingUrl, currentUser)); Assert.AreEqual(PlayerDetailsViewModelBuilder.EXCEPTION_PLAYER_GAME_RESULTS_CANNOT_BE_NULL, exception.Message); }
public void PlayerDetailsCannotBeNull() { var builder = new PlayerDetailsViewModelBuilder(null, null); var exception = Assert.Throws <ArgumentNullException>(() => builder.Build(null, twitterMinionBraggingUrl, currentUser)); Assert.AreEqual("playerDetails", exception.ParamName); }
public void ItRequiresPlayerStatistics() { var builder = new PlayerDetailsViewModelBuilder(null, null); var playerDetailsWithNoStatistics = new PlayerDetails() { PlayerGameResults = new List <PlayerGameResult>() }; var exception = Assert.Throws <ArgumentException>(() => builder.Build(playerDetailsWithNoStatistics, twitterMinionBraggingUrl, currentUser)); Assert.AreEqual(PlayerDetailsViewModelBuilder.EXCEPTION_PLAYER_STATISTICS_CANNOT_BE_NULL, exception.Message); }
public void MinionsCannotBeNull() { var builder = new PlayerDetailsViewModelBuilder(null, null); var playerDetailsWithNoMinions = new PlayerDetails() { PlayerGameResults = new List <PlayerGameResult>() }; playerDetailsWithNoMinions.PlayerStats = new PlayerStatistics(); var exception = Assert.Throws <ArgumentException>(() => builder.Build(playerDetailsWithNoMinions, twitterMinionBraggingUrl, currentUser)); Assert.AreEqual(PlayerDetailsViewModelBuilder.EXCEPTION_MINIONS_CANNOT_BE_NULL, exception.Message); }
public void FormerChampionedGamesCannotBeNull() { var builder = new PlayerDetailsViewModelBuilder(null, null); var playerDetailsWithNoChampionedGames = new PlayerDetails() { PlayerGameResults = new List <PlayerGameResult>(), PlayerStats = new PlayerStatistics(), Minions = new List <Player>(), ChampionedGames = new List <Champion>() }; var exception = Assert.Throws <ArgumentException>(() => builder.Build(playerDetailsWithNoChampionedGames, twitterMinionBraggingUrl, currentUser)); Assert.AreEqual(PlayerDetailsViewModelBuilder.EXCEPTION_FORMERCHAMPIONED_GAMES_CANNOT_BE_NULL, exception.Message); }
public void TestFixtureSetUp() { AutomapperConfiguration.Configure(); minionViewModelBuilderMock = MockRepository.GenerateMock <IMinionViewModelBuilder>(); currentUser = new ApplicationUser() { CurrentGamingGroupId = gamingGroupId, Id = "application user id" }; var gameDefinition1 = new GameDefinition() { Name = "test game 1", Id = gameDefinitionIdThatIsChampionedByCurrentPlayer, }; gameDefinitionThatIsFormerlyChampionedByCurrentPlayer = new GameDefinition { Name = "formerly championed game", Id = gameDefinitionIdThatIsFormerlyChampionedByCurrentPlayer }; gameDefinitionThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer = new GameDefinition { Name = "currently and formerly championed game", Id = gameDefinitionIdThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer }; var playedGame1 = new PlayedGame() { Id = 1, GameDefinition = gameDefinition1 }; var playedGame2 = new PlayedGame() { Id = 2, GameDefinitionId = gameDefinitionIdThatIsFormerlyChampionedByCurrentPlayer }; var playerGameResults = new List <PlayerGameResult>() { new PlayerGameResult() { PlayedGameId = 12, PlayedGame = playedGame1 }, new PlayerGameResult() { PlayedGameId = 13, PlayedGame = playedGame2 } }; normalPlayer = new PlayerVersusPlayerStatistics { OpposingPlayerName = "Jim", OpposingPlayerId = 1, NumberOfGamesWonVersusThisPlayer = 10, NumberOfGamesLostVersusThisPlayer = 10 }; playerWithNoGamesPlayed = new PlayerVersusPlayerStatistics { OpposingPlayerId = 2 }; minionPlayer = new PlayerVersusPlayerStatistics { OpposingPlayerName = "Minion Player", OpposingPlayerId = 5, NumberOfGamesWonVersusThisPlayer = 20, NumberOfGamesLostVersusThisPlayer = 0 }; nemesisPlayer = new PlayerVersusPlayerStatistics { OpposingPlayerName = "nemesis player", OpposingPlayerId = 3, NumberOfGamesWonVersusThisPlayer = 0, NumberOfGamesLostVersusThisPlayer = 100 }; var nemesis = new Nemesis() { NemesisPlayerId = nemesisPlayer.OpposingPlayerId, NumberOfGamesLost = 3, LossPercentage = 75, NemesisPlayer = new Player() { Name = "Ace Nemesis", } }; playerDetails = new PlayerDetails() { Id = playerId, ApplicationUserId = currentUser.Id, Active = true, Name = "Skipper", LongestWinningStreak = 39, PlayerGameResults = playerGameResults, PlayerStats = new PlayerStatistics() { TotalGames = 5, TotalPoints = 150, AveragePlayersPerGame = 3, TotalGamesLost = 1, TotalGamesWon = 4, WinPercentage = 20 }, CurrentNemesis = nemesis, Minions = new List <Player> { new Player { Id = minionPlayer.OpposingPlayerId } }, GamingGroupId = gamingGroupId, GamingGroupName = "gaming group name", PlayerVersusPlayersStatistics = new List <PlayerVersusPlayerStatistics> { normalPlayer, playerWithNoGamesPlayed, nemesisPlayer, minionPlayer }, PlayerGameSummaries = new List <PlayerGameSummary> { new PlayerGameSummary { GameDefinitionId = gameDefinitionIdThatIsChampionedByCurrentPlayer }, new PlayerGameSummary { GameDefinitionId = gameDefinitionIdThatIsFormerlyChampionedByCurrentPlayer }, new PlayerGameSummary { GameDefinitionId = gameDefinitionIdThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer } } }; gameResultViewModelBuilder = MockRepository.GenerateMock <IGameResultViewModelBuilder>(); gameResultViewModelBuilder.Expect(build => build.Build(playerGameResults[0])) .Repeat .Once() .Return(new Models.PlayedGame.GameResultViewModel() { PlayedGameId = playerGameResults[0].PlayedGameId }); gameResultViewModelBuilder.Expect(build => build.Build(playerGameResults[1])) .Repeat .Once() .Return(new Models.PlayedGame.GameResultViewModel() { PlayedGameId = playerGameResults[1].PlayedGameId }); foreach (var player in playerDetails.Minions) { minionViewModelBuilderMock.Expect(mock => mock.Build(player)) .Return(new MinionViewModel() { MinionPlayerId = player.Id }); } var championedGames = new List <Champion> { new Champion { GameDefinition = gameDefinition1, GameDefinitionId = gameDefinitionIdThatIsChampionedByCurrentPlayer }, new Champion { GameDefinition = gameDefinitionThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer, GameDefinitionId = gameDefinitionIdThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer } }; playerDetails.ChampionedGames = championedGames; var formerChampionedGames = new List <GameDefinition> { gameDefinitionThatIsFormerlyChampionedByCurrentPlayer, gameDefinitionThatIsBothCurrentlyAndFormerlyChampionedByCurrentPlayer }; playerDetails.FormerChampionedGames = formerChampionedGames; builder = new PlayerDetailsViewModelBuilder(gameResultViewModelBuilder, minionViewModelBuilderMock); playerDetailsViewModel = builder.Build(playerDetails, twitterMinionBraggingUrl, currentUser); }