示例#1
0
        public void PlayersScoreSheetsUpdatedTest()
        {
            var scoreSheetOne = new PlayerScoreSheetViewModel {
                Wins = 3, Losses = 2, Ties = 1
            };
            var scoreSheetTwo = new PlayerScoreSheetViewModel {
                Wins = 2, Losses = 3, Ties = 1
            };
            var originalValueScoreSheetOne = JsonConvert.SerializeObject(scoreSheetOne);
            var originalValueScoreSheetTwo = JsonConvert.SerializeObject(scoreSheetTwo);
            var playerOne = new PlayerViewModel {
                PlayerType = PlayerType.USER, ScoreSheet = scoreSheetOne
            };
            var playerTwo = new PlayerViewModel {
                PlayerType = PlayerType.COMPUTER, ScoreSheet = scoreSheetTwo
            };
            var gameSession = new RockPaperScissorsGameViewModel(playerOne, playerTwo);

            gameSession.SubmitSelection((Actions)1);

            var updatedScoreSheetOne = gameSession.PlayerOne.ScoreSheet;
            var updatedScoreSheetTwo = gameSession.PlayerTwo.ScoreSheet;

            var result = originalValueScoreSheetOne != JsonConvert.SerializeObject(updatedScoreSheetOne) &&
                         originalValueScoreSheetTwo != JsonConvert.SerializeObject(updatedScoreSheetTwo);

            Assert.IsTrue(result);
        }
        public IActionResult RockPaperScissorsGame(PlayersHomePageViewModel playersHomePageViewModel)
        {
            playersHomePageViewModel.PlayerTwo.ScoreSheet = new PlayerScoreSheetViewModel();
            playersHomePageViewModel.PlayerOne.ScoreSheet = new PlayerScoreSheetViewModel();
            var gameViewModel = new RockPaperScissorsGameViewModel(playersHomePageViewModel.PlayerOne,
                                                                   playersHomePageViewModel.PlayerTwo);

            HttpContext.Session.SetString(sessionKey, JsonConvert.SerializeObject(gameViewModel));
            return(PartialView("/Views/RockPaperScissorsGame/_RockPaperScissorsGamePartial.cshtml", gameViewModel));
        }
示例#3
0
        public void PlayerTypeUserIsWinnerTest()
        {
            var playerOne = new PlayerViewModel {
                PlayerType = PlayerType.USER, ScoreSheet = new PlayerScoreSheetViewModel {
                    Wins = 5
                }
            };
            var playerTwo = new PlayerViewModel {
                PlayerType = PlayerType.COMPUTER, ScoreSheet = new PlayerScoreSheetViewModel {
                    Wins = 2
                }
            };
            var gameSession = new RockPaperScissorsGameViewModel(playerOne, playerTwo);

            gameSession.SubmitSelection((Actions)2);
            var result = gameSession.WinnerPlayer;

            Assert.AreEqual(result, PlayerType.USER);
        }