예제 #1
0
        public void Player_BlackJack_Win_15_Points()
        {
            //Arrange
            var player = new Player(0);

            player.Hit(new Card("11"));
            player.Hit(new Card("J"));
            var dealer = new Dealer(new List <Deck> {
                new Deck()
            }, 0);
            var settlementProvider = new AceAsOneSettlementProvider();

            //Act
            settlementProvider.Settlement(dealer, player);

            //Assert
            Assert.AreEqual(15, player.Point);
            Assert.AreEqual(-15, dealer.Point);
        }
예제 #2
0
        public void Push_No_Point_Change()
        {
            //Arrange
            var player = new Player(0);

            player.Hit(new Card("2"));
            player.Hit(new Card("2"));
            var dealer = new Dealer(new List <Deck> {
                new Deck()
            }, 0);

            dealer.Hit(new Card("2"));
            dealer.Hit(new Card("2"));
            var settlementProvider = new AceAsOneSettlementProvider();

            //Act
            settlementProvider.Settlement(dealer, player);

            //Assert
            Assert.AreEqual(0, player.Point);
            Assert.AreEqual(0, dealer.Point);
        }
예제 #3
0
        public void Player_Lost_Lose_10_Points()
        {
            //Arrange
            var player = new Player(0);

            player.Hit(new Card("2"));
            player.Hit(new Card("2"));
            var dealer = new Dealer(new List <Deck> {
                new Deck()
            }, 0);

            dealer.Hit(new Card("2"));
            dealer.Hit(new Card("3"));
            var settlementProvider = new AceAsOneSettlementProvider();

            //Act
            settlementProvider.Settlement(dealer, player);

            //Assert
            Assert.AreEqual(-10, player.Point);
            Assert.AreEqual(10, dealer.Point);
        }