def main(): # This is wrong, since animal is abstract. # However, Python does not prevent you from doing it. animal = animals.Animal('Harry', 65) # The below will throw an error, since eat() relies on primaryFood(), # which is not implemented in the base class. # animal.eat() # Should never do this. # tailedAnimal = animals.TailedAnimalMixin('Rex', tailLength=6.5) dog = animals.Dog('Rex', 65, tailLength=6.5, breed='Dalmatian') dog.bark() dog.eat() dog.sleep() dog.wagTail() print dog.weight() dog.takeToVet() # Bat itself does not have an __init__, but its first base class (WingedAnimalMixin) does. # Hence, we pass in three parameters, to match the signature of WingedAnimalMixin's __init__. bat = animals.Bat('Ted', 0.5, wingSpan=1.2) bat.fly() print bat.weight() bat.land() print bat.weight() bat.eat() bat.sleep() bat.hangUpsideDown()
def test_unit(self): bagira = animals.Animal("Puma", "Bagira", 20, "Female") self.assertEqual(bagira.spec, "Puma") self.assertEqual(bagira.name, "Bagira") self.assertEqual(bagira.age, 10) self.assertEqual(bagira.sex, "Female") self.assertIsNone(bagira.atype)
def test_receive_hit(self): animal = animals.Animal() animal.receive_hit(1) self.assertTrue(animal.is_alive) animal.receive_hit(8) self.assertTrue(animal.is_alive) animal.receive_hit(1) self.assertFalse(animal.is_alive)
def test_check_motility(self): animal = 'snake' name = 'Sandra' n_legs = 0 gender = 'F' speech_type = 'hiss' test_animals = animals.Animal(animal, name, n_legs, gender, speech_type) result = test_animals.check_motility() self.assertTrue(result, f'{name} the {animal} has no legs so it slides')
def test_check_speech(self): animal = 'cat' name = 'Luna' n_legs = 4 gender = 'F' speech_type = 'meow' test_animals = animals.Animal(animal, name, n_legs, gender, speech_type) result = test_animals.check_speech_type() # self.assertEqual(result, 'It is dog!') --> faild test self.assertEqual(result, 'It is a cat!')
def main(argv): animal_kind = argv[1] animal_name = argv[2] zoo_worker = argv[3] if animal_kind == 'cat': animal = animals.Cat(animal_name) elif animal_kind == 'dog': animal = animals.Dogfish(animal_name) else: animal = animals.Animal(animal_name, animal_kind) animal.introduce() if animal.kind == 'cat': animal.act(zoo_worker, 'meows') elif animal.kind == 'dog': animal.act(zoo_worker, 'barks') elif animal.kind == 'dogfish' animal.act(zoo_worker, 'stares') else: animal.act(zoo_worker, 'looks confused')
def test_animal_init(self): animal = 'dog' name = 'Toby' n_legs = 4 gender = 'M' speech_type = 'bau' test_animals = animals.Animal(animal, name, n_legs, gender, speech_type) assert hasattr(test_animals, 'animal'), 'Class Animal is missing animal attribute' assert hasattr(test_animals, 'name'), 'Class Animal is missing name attribute' assert hasattr(test_animals, 'n_legs'), 'Class Animal is missing n_legs attribute' assert hasattr(test_animals, 'gender'), 'Class Animal is missing gender attribute' assert hasattr( test_animals, 'speech_type'), 'Class Animal is missing speech_type attribute'
def test_attack(self): animal = animals.Animal() target = animals.Animal(99) animal.attack(target) self.assertEqual(target.health, 99)
def test_attack(self): animal = animals.Animal(100) shark = animals.Shark(weapon=animals.Laser()) shark.weapon.owner = shark shark.attack(animal) self.assertEqual(animal.health, 85.0)
def test_attack(self): orca = animals.Orca() animal = animals.Animal(100) orca.attack(animal) self.assertEqual(animal.health, 90)
def test_eat(self): orca = animals.Orca() animal = animals.Animal(100) orca.eat(animal) self.assertEqual(animal.health, 90)
def test_attack(self): shark = animals.Shark() animal = animals.Animal(100) shark.attack(animal) self.assertEqual(animal.health, 95)
def test_eat(self): shark = animals.Shark() animal = animals.Animal(100) shark.eat(animal) self.assertEqual(animal.health, 95)
import animals animal = animals.Animal("fred") animal.walk().walk().walk().run().run().displayHealth() dog = animals.Dog("Bob") dog.walk().walk().walk().run().run().pet().displayHealth() dragon = animals.Dragon("frank") dragon.walk().walk().walk().run().run().fly().fly().displayHealth()
def test_attack(self): animal = animals.Animal(100) weapon = animals.Nunchuck() shark = animals.Shark(weapon=weapon) shark.attack(animal) self.assertEqual(animal.health, 93)
import animals #help(animals) dog = animals.Animal("dog", "wof") dog.says()
def test_attack(self): animal = animals.Animal(100) weapon = animals.Nunchuck() orca = animals.Orca(weapon=weapon) orca.attack(animal) self.assertEqual(animal.health, 88)
import animals import shapes #Implementation of classes for various animals and shapes (10 classes each) to learn abstraction and encapsulation, public and private access specifiers in Python print("Details of animals.....\n") a1 = animals.Animal() a1.set_kingdom("Mammal") a1.set_lifespan("20") a1.displaydetails() print("\n") d1 = animals.Dog() d1.set_name() d1.set_lifespan("20") d1.displaydetails() d1.animalProperty() print("\n") liz1 = animals.Lizard() liz1.set_name() liz1.set_lifespan("10") liz1.displaydetails() liz1.animalProperty() print("\n") b1 = animals.Butterfly() b1.set_name() b1.set_lifespan("2") b1.displaydetails() b1.animalProperty() print("\n")
def test_die(self): animal = animals.Animal() self.assertTrue(animal.is_alive) animal.die() self.assertFalse(animal.is_alive)