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 1
1
from time import sleep
2
2
3
+ from scheduler .queues import get_queue
4
+
3
5
_counter = 0
4
6
5
7
@@ -29,3 +31,9 @@ def failing_job():
29
31
30
32
def test_job ():
31
33
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):
671
671
task .refresh_from_db ()
672
672
self .assertTrue (task .is_scheduled ())
673
673
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