Beispiel #1
0
    def test_publish_advert(self):
        request_approval_job_advert(job_id=self.job_id,
                                    advert_id=self.advert['_id'])
        approve_job_advert(job_id=self.job_id, advert_id=self.advert['_id'])

        self._assert_set_status(action="publish",
                                expected_action=AdvertStatus.PUBLISHED)
Beispiel #2
0
    def test_archive_advert(self):
        request_approval_job_advert(job_id=self.job_id,
                                    advert_id=self.advert['_id'])
        approve_job_advert(job_id=self.job_id, advert_id=self.advert['_id'])
        publish_job_advert(job_id=self.job_id, advert_id=self.advert['_id'])

        self._assert_set_status(action="archive",
                                expected_action=AdvertStatus.ARCHIVED)
    def _create_approved_advert(self):
        job = self.create_from_factory(JobFactory)
        job_id = job['_id']
        advert = add_advert_to_job(job_id=job_id, advert_duration_days=15)
        advert_id = advert['_id']
        request_approval_job_advert(job_id=job_id, advert_id=advert_id)
        approve_job_advert(job_id=job_id, advert_id=advert_id)

        return job_id, advert_id
    def _crate_job(cls, **job_args):
        job = cls.create_from_factory(JobFactory, **job_args)
        job_id = job['_id']
        advert = add_advert_to_job(job_id=job_id, advert_duration_days=15)
        advert_id = advert['_id']

        request_approval_job_advert(job_id=job_id, advert_id=advert_id)
        approve_job_advert(job_id=job_id, advert_id=advert_id)
        publish_job_advert(job_id=job_id, advert_id=advert_id)

        return job
Beispiel #5
0
    def test_edit_job_not_allowed_if_draft_and_not_admin(self):
        self._user = self.create_from_factory(
            UserFactory, user_type=UserType.HIRING_MANAGER)

        data = {"title": "new title"}
        job_id = self.job['_id']

        advert = add_advert_to_job(job_id=job_id, advert_duration_days=19)
        approve_job_advert(job_id=job_id, advert_id=advert['_id'])

        url = self.url_for_admin(JOB_URL, job_id=job_id)
        response = self.post_json(url, data)

        self.assertEqual(400, response.status_code)
        self.assertEqual(
            loads(response.data)['message'],
            "User not allowed to edit an approved advert")
Beispiel #6
0
    def _crate_job(cls,
                   duration=15, published=True, expired=False, **job_args):
        job = cls.create_from_factory(JobFactory, **job_args)
        job_id = job['_id']
        advert = add_advert_to_job(job_id=job_id,
                                   advert_duration_days=duration)
        advert_id = advert['_id']

        request_approval_job_advert(job_id=job_id, advert_id=advert_id)
        approve_job_advert(job_id=job_id, advert_id=advert_id)
        if published:
            publish_job_advert(job_id=job_id, advert_id=advert_id)

        if expired:
            cls._make_advert_expired(job_id=job_id, advert_id=advert_id)

        return job