Example #1
0
 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"
     }
Example #2
0
    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"
Example #3
0
 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)
Example #4
0
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)
Example #5
0
 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
Example #6
0
 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"
Example #7
0
    def create(name, _id=None):
        brand = Brand(name=name, _id=_id)

        return brand if BrandFactory.validate(brand) else None
Example #8
0
 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
Example #9
0
 def setUp(self):
     self.brand = Brand('Honda')
     self.brand_with_id = Brand('Ford', 'b07e1d28b7cf45deb63ff5f19e764f90')
     self.brand_id = self.brand._id