本文整理汇总了Python中durak.controller.GameController类的典型用法代码示例。如果您正苦于以下问题:Python GameController类的具体用法?Python GameController怎么用?Python GameController使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了GameController类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_is_player1_to_move
def test_is_player1_to_move(self):
controller = GameController()
controller._to_move = controller._player1
self.assertTrue(controller.is_player1_to_move())
controller._to_move = controller._player2
self.assertFalse(controller.is_player1_to_move())
示例2: test_to_move_property
def test_to_move_property(self):
controller = GameController()
controller._to_move = controller._player1
self.assertEqual(controller.to_move, controller.PLAYER1)
controller._to_move = controller._player2
self.assertEqual(controller.to_move, controller.PLAYER2)
示例3: test_winner_property
def test_winner_property(self):
controller = GameController()
given_list = [controller._player1, controller._player2, None]
expected_list = [controller.PLAYER1, controller.PLAYER2, None]
for given, expected in zip(given_list, expected_list):
controller._winner = given
self.assertEqual(controller.winner, expected)
示例4: test_to_respond
def test_to_respond(self):
controller = GameController()
controller._to_move = controller._player1
self.assertEqual(controller._to_respond, controller._player2)
controller._to_move = controller._player2
self.assertEqual(controller._to_respond, controller._player1)
示例5: test_register_move_goes_to_responding_if_card_is_none
def test_register_move_goes_to_responding_if_card_is_none(self):
controller = GameController()
controller._state = controller.States.MOVING
controller._on_table = [DurakCard('AC'), DurakCard('AH')]
controller.register_move(None)
self.assertEqual(controller._state, controller.States.DEALING)
示例6: test_if_winner_is_ignored_first_move_is_selected_by_trump
def test_if_winner_is_ignored_first_move_is_selected_by_trump(self):
controller = GameController()
controller._winner = controller._player1
with patch.object(controller,
'_get_first_to_move_by_trump') as _get_first_mock:
controller.start_new_game()
self.assertEqual(controller._to_move, _get_first_mock.return_value)
示例7: test_if_winner_is_none_first_move_is_selected_by_trump
def test_if_winner_is_none_first_move_is_selected_by_trump(self):
controller = GameController()
self.assertTrue(controller._winner is None)
with patch.object(controller,
'_get_first_to_move_by_trump') as _get_first_mock:
controller.start_new_game()
self.assertEqual(controller._to_move, _get_first_mock.return_value)
示例8: test_get_enemy_of
def test_get_enemy_of(self):
controller = GameController()
self.assertEqual(
controller._get_enemy_of(controller._player1), controller._player2
)
self.assertEqual(
controller._get_enemy_of(controller._player2), controller._player1
)
示例9: test_register_give_more_with_no_cards_goes_to_dealing
def test_register_give_more_with_no_cards_goes_to_dealing(self):
controller = GameController()
controller._state = controller.States.GIVING_MORE
controller._no_response = True
controller.register_give_more([])
self.assertEqual(controller.state, controller.States.DEALING)
示例10: test_start_new_game_return_value_and_state
def test_start_new_game_return_value_and_state(self):
controller = GameController()
result = controller.start_new_game()
self.assertDictEqual(result, {
'player1_cards': set(controller._player1.cards),
'player2_cards': set(controller._player2.cards),
'trump': controller._trump,
})
self.assertEqual(controller.state, controller.States.MOVING)
示例11: test_if_winner_and_not_ignored_it_selects_first_move
def test_if_winner_and_not_ignored_it_selects_first_move(self):
controller = GameController()
controller._winner = controller._player1
with patch.object(controller,
'_get_first_to_move_by_trump') as _get_first_mock:
controller.start_new_game(ignore_winner=False)
self.assertEqual(controller._to_move, controller._player1)
self.assertFalse(_get_first_mock.called)
示例12: test_start_new_game_players_and_deck_cards
def test_start_new_game_players_and_deck_cards(self):
controller = GameController()
controller.start_new_game()
self.assertEqual(controller._trump, controller._deck[-1])
all_cards = []
all_cards.extend(controller._deck)
all_cards.extend(controller._player1.cards)
all_cards.extend(controller._player2.cards)
self.assertItemsEqual(all_cards, DurakCard.all())
示例13: test_successful_register_give_more
def test_successful_register_give_more(self):
controller = GameController()
controller._state = controller.States.GIVING_MORE
controller._no_response = True
controller._to_move = controller._player1
controller._deck = [DurakCard('JH')]
controller._trump = DurakCard('6H')
controller._player1.cards = CardSet(
cards=(DurakCard('AC'), DurakCard('6S'), DurakCard('6H')),
trump=controller._trump
)
controller._player2.cards = CardSet(
cards=(DurakCard('7C'), DurakCard('7H'), DurakCard('7D')),
trump=controller._trump
)
controller._on_table = Table([DurakCard('6D')])
controller.register_give_more([DurakCard('6S'), DurakCard('6H')])
self.assertItemsEqual(controller._player1.cards, [DurakCard('AC')])
self.assertSequenceEqual(controller._on_table, [DurakCard('6D')])
self.assertItemsEqual(
controller._on_table.given_more, [DurakCard('6S'), DurakCard('6H')]
)
self.assertEqual(controller._state, controller.States.DEALING)
示例14: test_state
def test_state(self):
controller = GameController()
states = {
controller.States.MOVING,
controller.States.RESPONDING,
controller.States.GIVING_MORE,
controller.States.DEALING
}
for state in states:
controller._state = state
self.assertEqual(controller.state, state)
示例15: test_deal_cards_and_return_value
def test_deal_cards_and_return_value(self):
controller = GameController()
controller._trump = DurakCard('6H')
controller._state = controller.States.DEALING
controller._no_response = False
controller._discarded = []
controller._to_move = controller._player1
controller._player1.cards = {DurakCard('6S'), DurakCard('6H')}
controller._player2.cards = {DurakCard('7S'), DurakCard('7H')}
controller._deck = [
DurakCard('AS'),
DurakCard('AH'),
DurakCard('KS'),
DurakCard('KH'),
DurakCard('QS'),
DurakCard('QH'),
DurakCard('JS'),
DurakCard('JH'),
DurakCard('TS'),
DurakCard('TH'),
]
controller._on_table = Table()
controller._logger_enabled = False
return_value = controller.deal()
self.assertItemsEqual(
controller._player1.cards, [
DurakCard('6S'),
DurakCard('6H'),
DurakCard('AS'),
DurakCard('AH'),
DurakCard('KS'),
DurakCard('KH'),
]
)
self.assertItemsEqual(
controller._player2.cards, [
DurakCard('7S'),
DurakCard('7H'),
DurakCard('QS'),
DurakCard('QH'),
DurakCard('JS'),
DurakCard('JH'),
]
)
self.assertSequenceEqual(
controller._deck, [DurakCard('TS'), DurakCard('TH')]
)
self.assertDictEqual(return_value, {
'player1_cards': controller._player1.cards - {DurakCard('6S'), DurakCard('6H')},
'player2_cards': controller._player2.cards - {DurakCard('7S'), DurakCard('7H')},
})