def test_hit_hat(self): car1 = Car(1000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(2000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) car3 = Car(3000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1]) garage2 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car2, car3]) cesar = Cesar(rnd_name(), [garage1, garage2]) self.assertEqual(cesar.hit_hat(), 6000)
def test_hit_hat(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1, car2]) self.assertEqual(garage.hit_hat(), car1.price + car2.price) garage = Garage(rnd_town(), rnd_int(), rnd_uuid()) self.assertEqual(garage.hit_hat(), 0)
def test_init_add_garage(self): garage1 = Garage(rnd_town(), rnd_int()) garage2 = Garage(rnd_town(), rnd_int()) cesar = Cesar(rnd_name(), [garage1]) self.assertFalse(cesar.add_garage(garage1)) self.assertTrue(cesar.add_garage(garage2)) self.assertEqual(cesar.register_id, garage1.owner) self.assertEqual(cesar.register_id, garage2.owner) self.assertTrue(garage1.number in cesar.garages) self.assertTrue(garage2.number in cesar.garages)
def test_cars_count(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car3 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1]) garage2 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car2, car3]) cesar = Cesar(rnd_name(), [garage1, garage2]) self.assertEqual(cesar.cars_count(), 3)
def test_init_add_garage_instance(self): cesar = Cesar(rnd_name()) garage = Garage(rnd_town(), rnd_int()) for value in [1000, 'some string', [garage]]: with self.assertRaises(TypeError): cesar.add_garage(value)
def test_init_add_car_garage_instance(self): cesar = Cesar(rnd_name()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid()) car = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) for value in [1000, 'some string', [garage]]: with self.assertRaises(TypeError): cesar.add_car(car, value)
def test_cars_count(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1, car2]) self.assertEqual(garage.cars_count(), 2)
def test_not_equal_register_id(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car3 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), None, [car1, car2]) garage2 = Garage(rnd_town(), rnd_int(), None, [car3]) name = rnd_name() garages = [garage1, garage2] register_id = rnd_uuid() cesar1 = Cesar(name, garages, register_id) cesar2 = Cesar(name, garages, rnd_uuid()) self.assertNotEqual(cesar1, cesar2)
def test_add_same_car(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1]) before_cars = garage.cars self.assertFalse(garage.add(car1)) after_cars = garage.cars self.assertEqual(before_cars, after_cars)
def test_remove_instance(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1]) with self.assertRaises(TypeError): garage.add('My Car') with self.assertRaises(TypeError): garage.add([car1])
def test_comparison(self): car1 = Car(1000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(2000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1, car2]) cesar1 = Cesar(rnd_name(), [garage1]) car1 = Car(1000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(3000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1, car2]) cesar2 = Cesar(rnd_name(), [garage1]) car1 = Car(2000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(1000.0, rnd_car_type(), rnd_car_producer(), rnd_float()) garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1, car2]) cesar3 = Cesar(rnd_name(), [garage1]) self.assertGreater(cesar2, cesar1) self.assertGreaterEqual(cesar1, cesar3) self.assertLess(cesar1, cesar2) self.assertLessEqual(cesar1, cesar3)
def test_remove_not_existing_car(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid(), [car1]) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) before_cars = garage.cars self.assertFalse(garage.remove(car2)) after_cars = garage.cars self.assertEqual(before_cars, after_cars)
def test_set_owner(self): garage = Garage(rnd_town(), rnd_int(), rnd_uuid()) new_owner = rnd_uuid() garage.set_owner(new_owner) self.assertEqual(garage.owner, new_owner) self.assertIsInstance(garage.owner, uuid.UUID) cesar = Cesar('Test') garage.set_owner(cesar) self.assertEqual(garage.owner, cesar.register_id) self.assertIsInstance(garage.owner, uuid.UUID)
def test_not_equal_number(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) car2 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) town = rnd_town() places = rnd_int() owner = rnd_uuid() cars = [car1, car2] number = rnd_uuid() garage1 = Garage(town, places, owner, cars, number) garage2 = Garage(town, places, owner, cars, rnd_uuid()) self.assertNotEqual(garage1, garage2)
def test_init_with_invalid_town(self): for value in ['My Town', 1000, ['Town 1', 'Town 2']]: with self.assertRaises(InvalidValueException): Garage(value, rnd_int())
def test_init_with_invalid_cars(self): car1 = Car(rnd_float(), rnd_car_type(), rnd_car_producer(), rnd_float()) for value in ['My Car', car1, {'car': car1}]: with self.assertRaises(ValueError): Garage(rnd_town(), rnd_int(), rnd_uuid(), value)
def test_has_owner(self): garage = Garage(rnd_town(), rnd_int()) self.assertFalse(garage.has_owner()) garage = Garage(rnd_town(), rnd_int(), rnd_uuid()) self.assertTrue(garage.has_owner())
def test_init_with_invalid_owner(self): for value in ['some string', 1000]: with self.assertRaises(ValueError): Garage(rnd_town(), rnd_int(), value)
def test_garages_count(self): garage1 = Garage(rnd_town(), rnd_int()) garage2 = Garage(rnd_town(), rnd_int()) cesar = Cesar(rnd_name(), [garage1, garage2]) self.assertEqual(cesar.garages_count(), 2)
def test_init_with_invalid_garages(self): garage1 = Garage(rnd_town(), rnd_int(), rnd_uuid()) for value in ['My Garage', garage1, {'garage': garage1}]: with self.assertRaises(ValueError): Cesar(rnd_name(), [], value)