def test_zoo_pay_worker_no_budget(self): z = Zoo("Zoo", 200, 2, 2) z.hire_worker(Vet("John", 23, 100)) z.hire_worker(Keeper("Bill", 28, 150)) res = z.pay_workers() self.assertEqual( res, "You have no budget to pay your workers. They are unhappy")
def test_zoo_pay_worker_success(self): z = Zoo("Zoo", 1500, 2, 2) z.hire_worker(Vet("John", 23, 100)) z.hire_worker(Keeper("Bill", 28, 150)) res = z.pay_workers() self.assertEqual(z._Zoo__budget, 1250) self.assertEqual( res, "You payed your workers. They are happy. Budget left: 1250")
def test_worker_status(self): z = Zoo("My Zoo", 500, 3, 3) z.hire_worker(Vet("Leo", 35, 100)) z.hire_worker(Keeper("Tigy", 40, 100)) z.hire_worker(Caretaker("Chi", 24, 100)) res = z.workers_status() self.assertEqual( res, "You have 3 workers\n----- 1 Keepers:\nName: Tigy, Age: 40, Salary: 100\n----- 1 Caretakers:\nName: Chi, Age: 24, Salary: 100\n----- 1 Vets:\nName: Leo, Age: 35, Salary: 100" )
def test_zoo_fire_worker_success(self): z = Zoo("Zoo", 1500, 1, 1) z.hire_worker(Keeper("K", 45, 100)) res = z.fire_worker("K") self.assertEqual(res, "K fired successfully") self.assertEqual(z.workers, [])
def test_zoo_hire_worker_no_space(self): z = Zoo("Some Zoo", 1500, 1, 0) res = z.hire_worker(Vet("I am Vet", 20, 500)) self.assertEqual(res, "Not enough space for worker") self.assertEqual(len(z.workers), 0) self.assertEqual(z._Zoo__workers_capacity, 0)
def test_zoo_hire_worker_success(self): z = Zoo("Some Zoo", 1500, 1, 1) res = z.hire_worker(Vet("I am Vet", 20, 500)) self.assertEqual(res, "I am Vet the Vet hired successfully") self.assertEqual(len(z.workers), 1) self.assertEqual(z._Zoo__workers_capacity, 1)
Caretaker("Bill", 21, 68), Caretaker("Marie", 32, 105), Caretaker("Stacy", 35, 140), Vet("Peter", 40, 300), Vet("Kasey", 37, 280), Vet("Sam", 29, 220) ] # Adding all animals for i in range(len(animals)): animal = animals[i] price = prices[i] print(zoo.add_animal(animal, price)) # Adding all workers for worker in workers: print(zoo.hire_worker(worker)) # Tending animals print(zoo.tend_animals()) # Paying keepers print(zoo.pay_workers()) # Fireing worker print(zoo.fire_worker("Adam")) # # Printing statuses print(zoo.animals_status()) print(zoo.workers_status())