def __create_and_play_card(self, player, food, climate): card = TraitCard("Test") card.climate_effect = climate card.food_effect = food player.add_to_hand_cards([card]) self.climate_phase.play_card(player, card)
def test_player_already_played(self): cards = [TraitCard("Test1"), TraitCard("Test2")] player = self.game.players[0] player.add_to_hand_cards(cards) self.climate_phase.play_card(player, cards[0]) self.assertRaises(ValueError, lambda: self.climate_phase.play_card(player, cards[1]))
def test_add_species_removes_hand_card(self): """ Test function removes discard card from player hand cards. """ self.player.hand_cards.extend( [TraitCard(name='Trait 1'), TraitCard(name='Trait 2')]) self.player.add_species(discard_card=self.player.hand_cards[0], position=SpeciesPosition.RIGHT) self.assertEqual([TraitCard(name='Trait 2')], self.player.hand_cards)
def __init__(self, player_names: list): self.board = Board() self.players = self.__generate_players(player_names) self.round = 1 self.draw_pile = [ TraitCard(name=f'Trait{i}') for i in range(self.__total_trait_cards) ] # Todo: Replace self.draw_pile with real traits. self.phase = Phase.DEAL
def test_ready_to_end(self): for player in self.game.players: card = TraitCard("Trait1") player.add_to_hand_cards([card]) self.climate_phase.play_card(player, card) state = self.climate_phase.end() self.assertEqual(PhaseState.ENDED, state)
def test_add_species_right(self): """ Test function adds species to the right of existing species. """ self.player.hand_cards = [TraitCard(name='Trait 1')] initial_species = [Species(name='first species')] self.player.species = initial_species self.player.add_species(discard_card=self.player.hand_cards[0], position=SpeciesPosition.RIGHT) self.assertEqual( ['first species', 'nameless species'], [self.player.species[0].name, self.player.species[1].name])
def add_trait(self, trait: TraitCard): self.traits.add(trait) trait.set_owner(self)
def setUp(self): self.trait_card = TraitCard(name='Burrowing')
def test_hash_is_the_same_for_two_trait_cards(self): trait_card_1 = TraitCard(name='Burrowing') trait_card_2 = TraitCard(name='Burrowing') self.assertEqual(hash(trait_card_1), hash(trait_card_2))
def test_eq_returns_false_when_trait_cards_are_not_equal(self): trait_card_1 = TraitCard(name='Burrowing') trait_card_2 = TraitCard(name='Long neck') self.assertNotEqual(trait_card_1, trait_card_2)
def test_eq_returns_true_when_trait_cards_are_equal(self): trait_card_1 = TraitCard(name='Burrowing') trait_card_2 = TraitCard(name='Burrowing') self.assertEqual(trait_card_1, trait_card_2)