Beispiel #1
0
    def test_dealer_button(self):
        """
        Give dealer button to first player or next of previous gamer

        Dealer is always awarded to the first player if the table.dealer field
        is empty or to the next player inthe table.dealer field
        """

        # Arrange
        us1 = User(username='******')
        us1.save()
        us2 = User(username='******')
        us2.save()
        us3 = User(username='******')
        us3.save()
        us4 = User(username='******')
        us4.save()
        player1 = Player(name=us1, state='start')
        player1.save()
        player2 = Player(name=us2, state='start')
        player2.save()
        player3 = Player(name=us3, state='start')
        player3.save()
        player4 = Player(name=us4, state='start')
        player4.save()
        table = Table(player1=player1,
                      player2=player2,
                      player3=player3,
                      player4=player4,
                      game_state='start')

        # Act & Assertion
        table.dealer_button()
        self.assertEqual(table.dealer, player1)

        table.game_state = 'start'
        table.dealer_button()
        self.assertEqual(table.dealer, player2)

        table.game_state = 'start'
        table.dealer_button()
        self.assertEqual(table.dealer, player3)

        table.game_state = 'start'
        table.dealer_button()
        self.assertEqual(table.dealer, player4)

        table.game_state = 'start'
        table.dealer_button()
        self.assertEqual(table.dealer, player1)
Beispiel #2
0
    def test_take_big_blind(self):
        """
        Take small blind from the next one from 'dealer player'

        Big blind is always awarded if players in table > 1
        - to the next player from the table.small_blind field
        """

        # Arrange
        us1 = User(username='******')
        us1.save()
        us2 = User(username='******')
        us2.save()
        us3 = User(username='******')
        us3.save()
        us4 = User(username='******')
        us4.save()
        player1 = Player(name=us1, state='start')
        player1.save()
        player2 = Player(name=us2, state='start')
        player2.save()
        player3 = Player(name=us3, state='start')
        player3.save()
        player4 = Player(name=us4, state='start')
        player4.save()
        table = Table(player1=player1,
                      player2=player2,
                      player3=player3,
                      player4=player4,
                      game_state='small_blind',
                      dealer=player1,
                      small_blind=player2)

        # Act & Assertion
        table.take_big_blind()
        self.assertEqual(table.big_blind, player3)

        table.game_state = 'small_blind'
        table.dealer = player2
        table.small_blind = player3
        table.take_big_blind()
        self.assertEqual(table.big_blind, player4)