def test_blackjack_no_usable(self):
     state = State(21, blank, False)
     self.assertEqual(BUST, state.move_with(Card.TWO))
 def test_blackjack_and_ace(self):
     state = State(21, blank, True)
     self.check_sum(12, state.move_with(Card.ACE))
     self.check_used_ace(state.move_with(Card.ACE))
 def test_moving_use_ace(self):
     state = State(17, blank, True)
     self.check_sum(17, state.move_with(Card.TEN))
     self.check_used_ace(state.move_with(Card.TEN))
 def test_moving_with_ace_bust(self):
     state = State(21, blank, False)
     self.assertEqual(BUST, state.move_with(Card.ACE))
 def test_moving_with_ace_no_bust(self):
     state = State(4, blank, True)
     self.check_sum(15, state.move_with(Card.ACE))
 def test_moving_bust(self):
     state = State(17, blank, False)
     self.assertEqual(BUST, state.move_with(Card.TEN))
 def test_moving_no_bust(self):
     state = State(17, blank, False)
     self.check_sum(20, state.move_with(Card.THREE))