Skip to content

Commit 13571f1

Browse files
committed
test
1 parent 8958f12 commit 13571f1

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

scheduler/tests/jobs.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from time import sleep
22

3+
from scheduler.queues import get_queue
4+
35
_counter = 0
46

57

@@ -29,3 +31,9 @@ def failing_job():
2931

3032
def test_job():
3133
return 1 + 1
34+
35+
36+
def enqueue_jobs():
37+
queue = get_queue()
38+
for i in range(20):
39+
queue.enqueue(test_job, job_id=f"job_{i}", args=())

scheduler/tests/test_models.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -671,3 +671,21 @@ def test_check_rescheduled_after_execution(self):
671671
task.refresh_from_db()
672672
self.assertTrue(task.is_scheduled())
673673
self.assertNotEqual(task.job_id, first_run_id)
674+
675+
def test_cron_task_enqueuing_jobs(self):
676+
queue = get_queue()
677+
prev_queued = len(queue.scheduled_job_registry)
678+
prev_finished = len(queue.finished_job_registry)
679+
task = task_factory(self.TaskModelClass, callable_name='scheduler.tests.jobs.enqueue_jobs')
680+
self.assertEqual(prev_queued + 1, len(queue.scheduled_job_registry))
681+
first_run_id = task.job_id
682+
entry = queue.fetch_job(first_run_id)
683+
queue.run_sync(entry)
684+
self.assertEqual(20, len(queue))
685+
self.assertEqual(prev_finished + 1, len(queue.finished_job_registry))
686+
worker = create_worker('default', fork_job_execution=False, )
687+
worker.work(burst=True)
688+
self.assertEqual(prev_finished + 21, len(queue.finished_job_registry))
689+
worker.refresh()
690+
self.assertEqual(20, worker.successful_job_count)
691+
self.assertEqual(0, worker.failed_job_count)

0 commit comments

Comments
 (0)