def test_delete_ref_presence(self): test_entity_id = random.randint(1, MAX_ENTITY_NUM) test_entity_ref_id = Operator.get_by_id(Employee, test_entity_id).department_id Operator.remove(Employee, test_entity_id) self.assertIsNotNone(Operator.get_by_id(Department, test_entity_ref_id))
def test_update(self): test_entity_new = Employee.random() test_entity_new.id = random.randint(1, MAX_ENTITY_NUM) Operator.update(Employee, marsh(test_entity_new, EmployeeSchema)) self.assertEqual( marsh(test_entity_new, EmployeeSchema), marsh(Operator.get_by_id(Employee, test_entity_new.id), EmployeeSchema))
def delete(self, id_): """Deletes an employee from the database by the id. Returns: All the employees from the db using marshal or aborts with 404 code. """ if Operator.remove(Employee, id_): return Operator.get_all(Employee) abort(404)
def delete(self, id_): """Deletes a department from the database by the id. Returns: All the departments from the db using marshal or aborts with 404 code. """ if Operator.remove(Department, id_): return Operator.get_all(Department) abort(404)
def test_update(self): test_entity_new = Department.random() test_entity_new.id = random.randint(1, MAX_ENTITY_NUM) self.assertTrue( Operator.update(Department, marsh(vars(test_entity_new), DepartmentSchema)))
def get(self): """Returns filtered list of departments from the db using marshal.""" try: search_params = lomarsh(request.args, DepartmentSearchSchema) return Operator.get_all( Department, search_expr=self._get_search_expr(search_params)) except ValidationError: abort(400)
def get(self, id_): """Gets a department from the database by the id. Returns: Retreived department using marshal or aborts with 404 if department was not present. """ entity = Operator.get_by_id(Department, id_) return entity if entity else abort(404)
def get(self, id_): """Gets an employee from the database by the id. Returns: Retreived employee using marshal or aborts with 404 code. """ entity = Operator.get_by_id(Employee, id_) return entity if entity else abort(404)
def post(self): """Adds a department to the database. Returns: Department's id using marshal or aborts with 404. """ try: raw_data = lomarsh(request.form, DepartmentSchema) raw_data['id'] = None return Operator.insert(Department(**raw_data)) except IntegrityError: abort(400)
def post(self): """Adds an employee to the database. Returns: Employee's id using marshal or aborts with code 400. """ try: raw_data = lomarsh(request.form, EmployeeSchema) raw_data['id'] = None return Operator.insert(Employee(**raw_data)) except (IntegrityError, ValidationError): abort(400)
def random(cls): """Generates a random instance of the class. Returns: An instance of the class with randomly generated attributes. """ fake = Faker() fake.add_provider(date_time) return Employee(name=fake.name(), birthdate=fake.date_between(start_date='-50y', end_date='-18y'), salary=fake.random_int(MIN_SALARY, MAX_SALARY, step=1), department_id=fake.random_element(elements=tuple( d.id for d in Operator.get_all(Department))))
def put(self, id_): """Updates an employee from the database by the id. Returns: True (if the operation was successful) or False using marshal or aborts with 400 code. """ try: raw_data = lomarsh(request.form, EmployeeSchema) raw_data['id'] = id_ return Operator.update(Employee, raw_data) except (IntegrityError, InternalError, ValidationError): abort(400)
def put(self, id_): """Updates a department from the database by the id. Returns: True (if the operation was successful) or False using marshal or aborts with code 400. """ try: raw_data = lomarsh(request.form, DepartmentSchema) raw_data['id'] = id_ return Operator.update(Department, raw_data) except (IntegrityError, ValidationError): abort(400)
def test_insert(self): test_entity = Department.random() test_entity_id = Operator.insert(test_entity) self.assertEqual(test_entity, Operator.get_by_id(Department, test_entity_id))
def test_delete_refs_presence(self): test_entity_id = Operator.get_by_id( Employee, random.randint(1, MAX_ENTITY_NUM)).department_id Operator.remove(Department, test_entity_id) self.assertFalse( Employee.query.filter_by(department_id=test_entity_id).all())
def test_get(self): test_entity_id = random.randint(1, MAX_ENTITY_NUM) self.assertIsNotNone(Operator.get_by_id(Employee, test_entity_id))
def test_get_all(self): self.assertEqual(MAX_ENTITY_NUM, len(Operator.get_all(Employee)))
def test_insert(self): test_entity = Employee.random() test_entity_id = Operator.insert(test_entity) self.assertEqual(test_entity, Operator.get_by_id(Employee, test_entity_id))
def test_get_all(self): self.assertEqual(MAX_ENTITY_NUM, len(Operator.get_all(Department)))
def test_delete_instance_presence(self): test_entity_id = random.randint(1, MAX_ENTITY_NUM) Operator.remove(Department, test_entity_id) self.assertIsNone(Operator.get_by_id(Department, test_entity_id))