def setUp(self): self.vehicle = VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 2018) self.vehicle_with_id = VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 2018, '9fd11778695b44368fd03258cbcc7b17') self.json = { "plate": "ABC1234", "owner": { "doc_id": "58355843690", "name": "Marcia Garcia", "email": "*****@*****.**", "_id": "76e67f3c40024dfd94bdb71976022839" }, "model": { "name": "HRV EX 1.8", "brand": { "name": "Honda", "_id": "e29ed583b9a246a8a7f1596593bb7888" }, "_id": "b49aa1cb2082476bb3b6af601ec3ef9b" }, "model_year": 2018, "_id": "9fd11778695b44368fd03258cbcc7b17" }
def test_create_invalid_plate(self): with self.assertRaises(VehicleExceptions) as e: VehicleFactory.create( None, Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 2018) e.msg = "invalid plate - expected: None" with self.assertRaises(VehicleExceptions) as e: VehicleFactory.create( 'AAB14', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 2018) e.msg = "invalid plate - expected: a short plate" with self.assertRaises(VehicleExceptions) as e: VehicleFactory.create( 'AB234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 2018) e.msg = "invalid plate - expected: a plate that no matching with format AAA1111 - 3 letters and 4 numbers"
def test_create_valid_model_year(self): vehicle_year_none = VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), None) vehicle_next_year = VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), datetime.date.today().year + 1) vehicle_old = VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), datetime.date.today().year - 5) # 5 years old self.assertIsInstance(vehicle_year_none, Vehicle) self.assertIsInstance(vehicle_next_year, Vehicle) self.assertIsInstance(vehicle_old, Vehicle)
class BrandTest(TestCase): def setUp(self): self.brand = Brand('Honda') self.brand_with_id = Brand('Ford', 'b07e1d28b7cf45deb63ff5f19e764f90') self.brand_id = self.brand._id def test_create_brand(self): self.assertIsNotNone(self.brand._id) self.assertEqual(len(self.brand._id), 32) self.assertEqual(self.brand.name, 'Honda') def test_create_brand_with_id(self): self.assertEqual(self.brand_with_id._id, 'b07e1d28b7cf45deb63ff5f19e764f90') self.assertEqual(self.brand_with_id.name, 'Ford') def test_brand_as_json(self): expected = json.dumps({ "name": "Honda", "_id": self.brand_id }) self.assertEqual(self.brand.as_json(), expected) def test_brand_as_json_with_id(self): expected = json.dumps({ "name": "Ford", "_id": "b07e1d28b7cf45deb63ff5f19e764f90" }) self.assertEqual(self.brand_with_id.as_json(), expected)
def setUp(self): self.owner = Customer('76244717104', 'Antonio Azevedo', '*****@*****.**') self.brand = Brand('Honda') self.model = Model('Civic EXR 2.0', self.brand) self.vehicle = Vehicle('ABC1234', self.owner, self.model, 2016) self.vehicle_with_id = Vehicle('ABC1234', self.owner, self.model, 2016, 'b07e1d28b7cf45deb63ff5f19e764f90') self.vehicle_id = self.vehicle._id
def test_create_model_year_as_string(self): with self.assertRaises(VehicleExceptions) as e: VehicleFactory.create( 'ABC1234', Customer('58355843690', 'Marcia Garcia', '*****@*****.**', '76e67f3c40024dfd94bdb71976022839'), Model('HRV EX 1.8', Brand('Honda', 'e29ed583b9a246a8a7f1596593bb7888'), 'b49aa1cb2082476bb3b6af601ec3ef9b'), 'new') e.msg = "invalid model year - expected: a string"
def create(name, _id=None): brand = Brand(name=name, _id=_id) return brand if BrandFactory.validate(brand) else None
def setUp(self): self.brand = Brand('Honda') self.model = Model('Civic EXR 2.0', self.brand) self.model_with_id = Model('Civic EXR 2.0', self.brand, 'b07e1d28b7cf45deb63ff5f19e764f90') self.model_id = self.model._id
def setUp(self): self.brand = Brand('Honda') self.brand_with_id = Brand('Ford', 'b07e1d28b7cf45deb63ff5f19e764f90') self.brand_id = self.brand._id