File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change 11from 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
3032def 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 = ())
Original file line number Diff line number Diff 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 )
You can’t perform that action at this time.
0 commit comments