Пример #1
0
        public void NewGameMax3Players_Add4thPlayer_ThrowsInvalidOperation()
        {
            var game   = new BlackJackGame(cardProvider, DealerNamedData, 3);
            var player = new Avitar(playerName);

            game.AddPlayer(new BlackJackPlayer(new AvitarDto()
            {
                id = "8625cf04-b7e2", userName = playerName
            }, HandIdentifierProvider, 1));
            game.AddPlayer(new BlackJackPlayer(new AvitarDto()
            {
                id = "8625cf04-b7e2", userName = playerName
            }, HandIdentifierProvider, 1));
            game.AddPlayer(new BlackJackPlayer(new AvitarDto()
            {
                id = "8625cf04-b7e2", userName = playerName
            }, HandIdentifierProvider, 1));

            Assert.Throws <InvalidOperationException>(() => game.AddPlayer(new BlackJackPlayer(new AvitarDto()
            {
                id = "8625cf04-b7e2", userName = playerName
            }, HandIdentifierProvider, 1)));
            Assert.AreEqual(4, game.Players.Count());
            Assert.AreEqual(GameStatus.Ready, game.Status);
            Assert.AreEqual(game.CurrentPlayer, game.Players.First());
        }
Пример #2
0
        public void AfterDeal_PlayerHolds_CurrectValues()
        {
            var playerOneId = "8625cf04-b7e2";
            var game        = new BlackJackGame(cardProvider, DealerNamedData, 1);
            var player2     = new Avitar(playerName2);

            game.AddPlayer(new BlackJackPlayer(new AvitarDto()
            {
                id = "8625cf04-b7e2", userName = playerName2
            }, HandIdentifierProvider, 1));
            game.SetPlayerStatusReady(playerOneId);
            game.DealHands();

            Assert.AreEqual(2, game.Players.Last().Hands.First().Cards.Count());
            Assert.AreEqual(5, game.Players.First().Hands.First().PointValue);
            Assert.AreEqual(5, game.Players.Last().Hands.First().PointValue);
            Assert.IsTrue(game.Players.First().Hands.First().Cards.First().FaceDown);
            Assert.IsFalse(game.Players.First().Hands.First().Cards.Last().FaceDown);
            Assert.IsTrue(game.Players.Last().Hands.First().Cards.First().FaceDown);
            Assert.IsFalse(game.Players.Last().Hands.First().Cards.Last().FaceDown);
            Assert.AreEqual(GameStatus.InProgress, game.Status);

            game.PlayerHolds(playerOneId, HandIdentifierProvider.GenerateHandIds(1).Single());
            Assert.AreEqual(2, game.Players.First().Hands.First().Cards.Count());
            Assert.AreEqual(5, game.Players.First().Hands.First().PointValue);
            Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.First().Status);
            Assert.AreEqual(PlayerStatusTypes.InProgress, game.Players.Last().Status);
            Assert.AreEqual(GameStatus.InProgress, game.Status);

            game.PlayerHolds(DealerDataId, HandIdentifierProvider.GenerateHandIds(1).Single());
            Assert.AreEqual(2, game.Players.Last().Hands.First().Cards.Count());
            Assert.AreEqual(5, game.Players.Last().Hands.First().PointValue);
            Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.First().Status);
            Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.Last().Status);
            Assert.AreEqual(GameStatus.Complete, game.Status);
        }
Пример #3
0
        public void NewPlayer_Sam_CorrectName()
        {
            var sam = new Avitar(playerName);

            Assert.AreEqual(playerName, sam.Name);
        }