def test_kellyCriterion(self):
     deck = BlackjackDeck()
     deck.drawCard()
     self.player.updateCount(
         [Card('2', 'C'), Card('3', 'C'),
          Card('5', 'C')], [Card('Q', 'S')])
     self.assertEquals(self.player.count, 2)
     self.assertEquals(self.player.calculateAdvantage(deck), 0.0125)
     self.assertEquals(self.player.kellyCriterion(deck), 12.5)
 def test_mitStrategy(self):
     deck = BlackjackDeck()
     deck.drawCard()
     self.player.updateCount(
         [Card('2', 'C'), Card('3', 'C'),
          Card('5', 'C')], [Card('Q', 'S'), Card('4', 'S')])
     self.player.updateCount(
         [Card('2', 'C'), Card('3', 'C'),
          Card('5', 'C')], [Card('Q', 'S'), Card('4', 'S')])
     self.player.updateCount(
         [Card('2', 'C'), Card('3', 'C'),
          Card('5', 'C')], [Card('Q', 'S'), Card('4', 'S')])
     self.assertEquals(self.player.count, 9)
     self.assertEquals(self.player.mitStrategy(deck), 5)
示例#3
0
    def __init__(self, numDecks=8, player=Player(), **kwargs):
        self.numDecks = numDecks
        self.deck = BlackjackDeck(self.numDecks)
        # [player, bet]
        self.player = [player, 0]
        self.dealer = Player()
        self.reshuffle = False
        self.learning = False

        if isinstance(self.player[0], QLearningAgent):
            self.learning = True

        # Flags
        self.noPrint = False

        if "flags" in kwargs:
            if "-np" in kwargs['flags']:
                self.noPrint = True
def test_shuffle():
    deck = BlackjackDeck()
    card = deck.draw_card()
    n.assert_equal(len(deck), 51)
    deck.shuffle()
    n.assert_equal(len(deck), 52)
def test_deck_init():
    deck = BlackjackDeck()
    n.assert_equal(len(deck), 52)
    card = deck.draw_card()
    n.assert_equal(card.value_dict['Q'], 10)