def main(): freelancer_file = 'exercise/freelancer.json' schema = 'exercise/freelancer_schema.json' # load data freelance = get_json(freelancer_file) schema = get_json(schema) # validations if not freelance or not schema_validator.is_valid(freelance=freelance, schema=schema): return # process output = skill_duration.process_freelance(freelance) print(output)
def test_wrong_type_skill_name(self): self.freelance['freelance']['professionalExperiences'][0]['skills'][0][ 'name'] = Exception self.assertFalse(is_valid(self.freelance, self.schema))
def test_start_date_format(self): self.freelance['freelance']['professionalExperiences'][0][ 'startDate'] = "ain't" self.assertFalse(is_valid(self.freelance, self.schema))
def test_wrong_type_freelance(self): self.freelance['freelance'] = 'but' self.assertFalse(is_valid(self.freelance, self.schema))
def test_wrong_type_id(self): self.freelance['freelance']['id'] = 'the' self.assertFalse(is_valid(self.freelance, self.schema))
def test_wrong_type_end_date(self): self.freelance['freelance']['professionalExperiences'][0][ 'endDate'] = 9 self.assertFalse(is_valid(self.freelance, self.schema))
def test_wrong_type_skill_id(self): self.freelance['freelance']['professionalExperiences'][0]['skills'][0][ 'id'] = 'problems' self.assertFalse(is_valid(self.freelance, self.schema))
def test_missing_skill_name(self): self.freelance['freelance']['professionalExperiences'][0]['skills'][ 0].pop('name') self.assertFalse(is_valid(self.freelance, self.schema))
def test_wrong_type_pro_xp(self): self.freelance['freelance']['professionalExperiences'] = 'I' self.assertFalse(is_valid(self.freelance, self.schema))
def test_missing_end_date(self): self.freelance['freelance']['professionalExperiences'][0].pop( 'endDate') self.assertFalse(is_valid(self.freelance, self.schema))
def test_missing_pro_xp(self): self.freelance['freelance'].pop('professionalExperiences') self.assertFalse(is_valid(self.freelance, self.schema))
def test_missing_id(self): self.freelance['freelance'].pop('id') self.assertFalse(is_valid(self.freelance, self.schema))
def test_missing_freelance(self): self.freelance.pop('freelance') self.assertFalse(is_valid(self.freelance, self.schema))
def test_end_date_format(self): self.freelance['freelance']['professionalExperiences'][0][ 'endDate'] = 'one' self.assertFalse(is_valid(self.freelance, self.schema))