def test_schedule_job(app): rq = RQ(app, async=True) scheduler = rq.get_scheduler() assert scheduler.count() == 0 rq.job(add) job1 = add.schedule(timedelta(seconds=1), 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() purge(scheduler) job2 = add.schedule(datetime.utcnow() + timedelta(seconds=1), 3, 4) assert scheduler.count() == 1 assert job2 in scheduler.get_jobs() purge(scheduler) job3_id = uuid.uuid4().hex job3_description = 'custom description' job3 = add.schedule(timedelta(seconds=1), 5, 6, repeat=10, interval=2, description=job3_description, job_id=job3_id) assert job3 in scheduler.get_jobs() assert job3.meta.get('repeat') == 10 assert job3.meta.get('interval') == 2 assert job3.id == job3_id assert job3.description == job3_description purge(scheduler)
def test_cron_job(app): rq = RQ(app, async=True) scheduler = rq.get_scheduler() assert scheduler.count() == 0 rq.job(add) cron_string = '* * * * *' cron_name = 'add-it-for-real' job1 = add.cron(cron_string, cron_name, 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() assert job1.meta['cron_string'] == cron_string assert job1.id == 'cron-' + cron_name # purge(scheduler) job2 = add.cron(cron_string, cron_name, 3, 4) assert scheduler.count() == 1 # no duplicate here assert job2 in scheduler.get_jobs() assert job2.meta['cron_string'] == cron_string assert job2.id == 'cron-' + cron_name job3 = add.cron(cron_string, cron_name + '-pro', 3, 4) assert scheduler.count() == 2 # second cron assert job3 in scheduler.get_jobs() assert job3.id == 'cron-' + cron_name + '-pro' purge(scheduler)
def test_schedule_job(app): rq = RQ(app, is_async=True) scheduler = rq.get_scheduler() purge(scheduler) assert scheduler.count() == 0 rq.job(add) job1 = add.schedule(timedelta(seconds=1), 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() purge(scheduler) job2 = add.schedule(datetime.utcnow() + timedelta(seconds=1), 3, 4) assert scheduler.count() == 1 assert job2 in scheduler.get_jobs() purge(scheduler) job3_id = uuid.uuid4().hex job3_description = 'custom description' job3 = add.schedule(timedelta(seconds=1), 5, 6, repeat=10, interval=2, description=job3_description, job_id=job3_id) assert job3 in scheduler.get_jobs() assert job3.meta.get('repeat') == 10 assert job3.meta.get('interval') == 2 assert job3.id == job3_id assert job3.description == job3_description purge(scheduler) other_queue = 'other-queue' job4 = add.schedule(timedelta(seconds=1), 5, 6, queue=other_queue) # job will be scheduled in the other queue eventually assert job4.origin == other_queue # one more. the scheduler will have all jobs, no matter what # queue the job will eventually be queued in. assert job4 in scheduler.get_jobs() purge(scheduler)
def test_cron_job(app): rq = RQ(app, async_=True) scheduler = rq.get_scheduler() purge(scheduler) assert scheduler.count() == 0 rq.job(add) cron_string = '* * * * *' cron_name = 'add-it-for-real' job1 = add.cron(cron_string, cron_name, 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() assert job1.meta['cron_string'] == cron_string assert job1.id == 'cron-' + cron_name purge(scheduler) job2 = add.cron(cron_string, cron_name, 3, 4) assert scheduler.count() == 1 # no duplicate here assert job2 in scheduler.get_jobs() assert job2.meta['cron_string'] == cron_string assert job2.id == 'cron-' + cron_name job3 = add.cron(cron_string, cron_name + '-pro', 3, 4) assert scheduler.count() == 2 # second cron assert job3 in scheduler.get_jobs() assert job3.id == 'cron-' + cron_name + '-pro' other_queue = 'other-queue' job4 = add.cron(cron_string, cron_name + '-other', 3, 4, queue=other_queue) # job will be scheduled in the other queue eventually assert job4.origin == other_queue # one more. the scheduler will have all jobs, no matter what # queue the job will eventually be queued in. assert job4 in scheduler.get_jobs() assert scheduler.count() == 3 purge(scheduler)
def test_cron_job(app): rq = RQ(app, is_async=True) scheduler = rq.get_scheduler() purge(scheduler) assert scheduler.count() == 0 rq.job(add) cron_string = '* * * * *' cron_name = 'add-it-for-real' job1 = add.cron(cron_string, cron_name, 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() assert job1.meta['cron_string'] == cron_string assert job1.id == 'cron-' + cron_name purge(scheduler) job2 = add.cron(cron_string, cron_name, 3, 4) assert scheduler.count() == 1 # no duplicate here assert job2 in scheduler.get_jobs() assert job2.meta['cron_string'] == cron_string assert job2.id == 'cron-' + cron_name job3 = add.cron(cron_string, cron_name + '-pro', 3, 4) assert scheduler.count() == 2 # second cron assert job3 in scheduler.get_jobs() assert job3.id == 'cron-' + cron_name + '-pro' other_queue = 'other-queue' job4 = add.cron(cron_string, cron_name + '-other', 3, 4, queue=other_queue) # job will be scheduled in the other queue eventually assert job4.origin == other_queue # one more. the scheduler will have all jobs, no matter what # queue the job will eventually be queued in. assert job4 in scheduler.get_jobs() assert scheduler.count() == 3 purge(scheduler)
def test_schedule_job(app): rq = RQ(app, is_async=True) scheduler = rq.get_scheduler() purge(scheduler) assert scheduler.count() == 0 rq.job(add) job1 = add.schedule(timedelta(seconds=1), 1, 2) assert scheduler.count() == 1 assert job1 in scheduler.get_jobs() purge(scheduler) job2 = add.schedule(datetime.utcnow() + timedelta(seconds=1), 3, 4) assert scheduler.count() == 1 assert job2 in scheduler.get_jobs() purge(scheduler) job3_id = uuid.uuid4().hex job3_description = 'custom description' job3 = add.schedule(timedelta(seconds=1), 5, 6, repeat=10, interval=2, description=job3_description, job_id=job3_id) assert job3 in scheduler.get_jobs() assert job3.meta.get('repeat') == 10 assert job3.meta.get('interval') == 2 assert job3.id == job3_id assert job3.description == job3_description purge(scheduler) other_queue = 'other-queue' job4 = add.schedule(timedelta(seconds=1), 5, 6, queue=other_queue) # job will be scheduled in the other queue eventually assert job4.origin == other_queue # one more. the scheduler will have all jobs, no matter what # queue the job will eventually be queued in. assert job4 in scheduler.get_jobs() purge(scheduler)