示例#1
0
 def test_card_names(self):
     pang_card = Cards.PangCard(Cards.Suit.HEARTS, 5)
     rifle_card = Cards.RifleCard(Cards.Suit.SPADES, 2)
     horse_card = Cards.HorseCard(Cards.Suit.DIAMONDS, 8)
     self.assertEqual(pang_card.name, Cards.CardName.PANG)
     self.assertEqual(rifle_card.name, Cards.CardName.RIFLE)
     self.assertEqual(horse_card.name, Cards.CardName.HORSE)
示例#2
0
    def test_use_bang_cards(self):
        bang_card1 = Cards.PangCard(Cards.Suit.SPADES, 2)
        bang_card2 = Cards.PangCard(Cards.Suit.HEARTS, 8)
        player_names = [
            'Samuel', 'Gustav', 'Maria', 'Andrea', 'Tomas', 'Mona', 'Lennart'
        ]
        game_object = Game(player_names)
        game_object.active_player = game_object.players[3]

        game_object.active_player.add_cards([bang_card1, bang_card2])
        self.assertEqual(game_object.players[4].health, 5)
        self.assertEqual(len(game_object.active_player.hand), 2)
        game_object.use_card(bang_card1, game_object.players[4])
        self.assertEqual(len(game_object.active_player.hand), 1)
        self.assertEqual(game_object.players[4].health, 4)
        with self.assertRaises(InvalidTargetException):
            game_object.use_card(bang_card2, game_object.players[6])
        self.assertEqual(len(game_object.active_player.hand), 1)
示例#3
0
    def test_card_instances(self):
        pang_card = Cards.PangCard(Cards.Suit.HEARTS, 5)
        rifle_card = Cards.RifleCard(Cards.Suit.SPADES, 2)
        horse_card = Cards.HorseCard(Cards.Suit.DIAMONDS, 8)

        self.assertIsInstance(pang_card, Cards.Card)
        self.assertIsInstance(rifle_card, Cards.Card)
        self.assertIsInstance(rifle_card, Cards.WeaponCard)
        self.assertIsInstance(horse_card, Cards.Card)
        self.assertIsInstance(horse_card, Cards.EquipmentCard)
示例#4
0
 def create_deck(self):
     """
     Create all the different cards an place in deck
     :return:
     """
     deck = []
     for s in Suit:
         for i in range(2, 9):
             deck.append(Cards.PangCard(i, s))
             deck.append(Cards.MissCard(i, s))
         for i in range(2, 9, 3):
             deck.append(Cards.PistolCard(i, s))
             deck.append(Cards.StageCoachCard(i, s))
             deck.append(Cards.BeerCard(i, s))
             deck.append(Cards.PanicCard(i, s))
         for i in range(3, 9, 2):
             deck.append(Cards.RifleCard(i, s))
             deck.append(Cards.ScopeCard(i, s))
             deck.append(Cards.BarrelCard(i, s))
             deck.append(Cards.HorseCard(i, s))
         for i in range(2, 9, 3):
             deck.append(Cards.WellsFargoCard(i, s))
     return deck
示例#5
0
 def test_card_str(self):
     pang_card = Cards.PangCard(Cards.Suit.HEARTS, 5)
     rifle_card = Cards.RifleCard(Cards.Suit.SPADES, 2)
     horse_card = Cards.HorseCard(Cards.Suit.DIAMONDS, 8)
     pass