def test_gets_multiple_abilities(self):
        p = Pokemon('pikachu', 100)
        p.ability = None

        abilities = [
            ('static', 50),
            ('voltabsorb', 50),
        ]

        possible_items = p.get_possible_abilities(abilities)

        expected_items = ['static', 'voltabsorb']

        self.assertEqual(expected_items, possible_items)
    def test_gets_revealed_item_when_item_is_revealed(self):
        p = Pokemon('pikachu', 100)
        p.ability = 'static'

        abilities = [
            ('static', 50),
            ('voltabsorb', 50),
        ]

        possible_items = p.get_possible_abilities(abilities)

        expected_items = ['static']

        self.assertEqual(expected_items, possible_items)
Esempio n. 3
0
    def test_ignored_ability_in_pass_abilities(self):
        p = Pokemon('pikachu', 100)
        p.ability = None

        abilities = [
            ('static', 50),
            ('pressure',
             50),  # pass-ability; it reveals itself so do not guess
        ]

        possible_items = p.get_possible_abilities(abilities)

        expected_items = ['static']

        self.assertEqual(expected_items, possible_items)
Esempio n. 4
0
    def test_does_not_get_low_percentage_ability(self):
        p = Pokemon('pikachu', 100)
        p.ability = None

        abilities = [
            ('static', 65),
            ('other_ability1', 5),
            ('other_ability2', 5),
            ('other_ability3', 5),
            ('other_ability4', 5),
            ('other_ability5', 5),
            ('other_ability6', 5),
            ('other_ability7', 5),
        ]

        possible_items = p.get_possible_abilities(abilities)

        expected_items = ['static']

        self.assertEqual(expected_items, possible_items)