def test_get_jobs_by_category(self): with self.app_context: category = Category.find_by_name('Medizin') jobs = category.get_vacancies(3) self.assertEqual(3, len(list(jobs))) for job in jobs: category_names = [category.name for category in job.categories] self.assertIn('Medizin', category_names)
def create_category(category): # Fill necessary field category.user_id = get_jwt_identity() # Check existence of category name name = category.name old_category = Category.find_by_name(name) if old_category: raise DuplicateValueError('category', 'name', name) category.save_to_db() return message('Category "{}" was created.'.format(category.name))
def update_category(new_category, category_id): # Check existence of category category = Category.find_by_id(category_id) if not category: raise RecordNotFoundError('category', category_id) # Check permission if category.user.id != get_jwt_identity(): raise ForbiddenError() # Save category name for notification new_name = new_category.name # Check existence of category name old_category = Category.find_by_name(new_name) if old_category and old_category.id != category_id: raise DuplicateValueError('category', 'name', new_name) # Update final result category.update_from_copy(new_category) category.save_to_db() return message('Category "{}" was updated.'.format(new_name))
def fill_vacancies(self): records = self._parse_xml() for record in records: title = record.getElementsByTagName('titel')[0].firstChild.data firm = record.getElementsByTagName('firma')[0].firstChild.data text = record.getElementsByTagName('volltext')[0].firstChild.data postcode = record.getElementsByTagName('plz_arbeitsort')[0].firstChild.data location = record.getElementsByTagName('arbeitsort')[0].firstChild.data from_date = record.getElementsByTagName('vondatum')[0].firstChild.data job_link = record.getElementsByTagName('stellenlink')[0].firstChild.data job_type = record.getElementsByTagName('jobtype')[0].firstChild.data category_names = record.getElementsByTagName('category')[0].firstChild.data day, month, year = from_date.split('-') from_date = datetime.date(int(year), int(month), int(day)) vacancy = Vacancy(title=title, firm=firm, description=text, location_postcode=postcode, location=location, from_date=from_date, job_link=job_link, job_type=job_type) vacancy.save_to_db() for name in category_names.split(', '): category = Category.find_by_name(name=name) category.vacancies.append(vacancy) category.save_to_db()
def test_get_category_by_name(self): with self.app_context: category = Category.find_by_name('Medizin') self.assertEqual('Medizin', category.name)