@@ -124,16 +124,24 @@ async def run(
124124 ) as executor ,
125125 ):
126126 requests_iter : Optional [Iterator [Any ]] = None
127- # TODO: Configurable delay and move somewhere more appropriate
128127 scheduling_strategy .start_time = (
129- time .time ()
128+ time .time () + settings . scheduler_start_delay
130129 ) # Add a small delay to allow processes to start
131130 futures , queues , stop_event = await self ._start_processes (
132131 manager , executor , scheduling_strategy
133132 )
134133 run_info , requests_iter = self ._run_setup (
135134 futures , scheduling_strategy , max_number , max_duration
136135 )
136+
137+ # Add some initial requests to the queue
138+ requests_iter = self ._add_requests (
139+ requests_iter ,
140+ queues .requests ,
141+ run_info ,
142+ )
143+ # Wait for the test to start
144+ await asyncio .sleep (time .time () - scheduling_strategy .start_time )
137145 yield SchedulerResult (
138146 type_ = "run_start" ,
139147 run_info = run_info ,
@@ -285,9 +293,9 @@ def _add_requests(
285293 if time .time () >= run_info .end_time :
286294 raise StopIteration
287295
288- while (
289- not requests_queue . full ()
290- and added_count < settings .max_add_requests_per_loop
296+ while not requests_queue . full () and added_count < (
297+ run_info . strategy . queued_requests_limit
298+ or settings .max_add_requests_per_loop
291299 ):
292300 if run_info .created_requests >= run_info .end_number :
293301 raise StopIteration
0 commit comments