@@ -132,15 +132,19 @@ def test_push_queue(self):
132132
133133 item = create_p_item (self .organisation .id , 1 )
134134
135+ # Remove id, scheduler should create id for us
136+ delattr (item , "id" )
137+
135138 response = self .client .post (f"/queues/{ self .scheduler .scheduler_id } /push" , data = item .model_dump_json ())
136139 self .assertEqual (response .status_code , 201 )
137140 self .assertEqual (1 , self .scheduler .queue .qsize ())
141+ self .assertIsNotNone (response .json ().get ("id" ))
138142
139143 def test_push_incorrect_item_type (self ):
140144 response = self .client .post (
141145 f"/queues/{ self .scheduler .scheduler_id } /push" , json = {"priority" : 0 , "item" : "not a task" }
142146 )
143- self .assertEqual (response .status_code , 422 )
147+ self .assertEqual (response .status_code , 400 )
144148
145149 def test_push_queue_full (self ):
146150 # Set maxsize of the queue to 1
@@ -227,7 +231,7 @@ def test_push_replace_allowed(self):
227231 self .assertEqual (1 , self .scheduler .queue .qsize ())
228232
229233 # Check if the item on the queue is the replaced item
230- self .assertEqual (response .json ().get ("id" ), str (self .scheduler .queue .peek (0 ).id ))
234+ self .assertEqual (response .json ().get ("data" ). get ( " id" ), str (self .scheduler .queue .peek (0 ).data . get ( "id" ) ))
231235
232236 def test_push_updates_not_allowed (self ):
233237 # Set queue to no allow updates
@@ -282,7 +286,7 @@ def test_push_updates_allowed(self):
282286 self .assertEqual (1 , self .scheduler .queue .qsize ())
283287
284288 # Check if the item on the queue is the updated item
285- self .assertEqual (response .json ().get ("id" ), str (self .scheduler .queue .peek (0 ).id ))
289+ self .assertEqual (response .json ().get ("data" ). get ( " id" ), str (self .scheduler .queue .peek (0 ).data . get ( "id" ) ))
286290 self .assertEqual (response .json ().get ("data" ).get ("name" ), "updated-name" )
287291
288292 def test_push_priority_updates_not_allowed (self ):
@@ -339,7 +343,7 @@ def test_update_priority_higher(self):
339343 self .assertEqual (1 , self .scheduler .queue .qsize ())
340344
341345 # Check if the item on the queue is the updated item
342- self .assertEqual (response .json ().get ("id" ), str (self .scheduler .queue .peek (0 ).id ))
346+ self .assertEqual (response .json ().get ("data" ). get ( " id" ), str (self .scheduler .queue .peek (0 ).data . get ( "id" ) ))
343347
344348 def test_update_priority_lower (self ):
345349 """When updating the priority of the initial item on the priority queue
@@ -370,7 +374,7 @@ def test_update_priority_lower(self):
370374 self .assertEqual (1 , self .scheduler .queue .qsize ())
371375
372376 # Check if the item on the queue is the updated item
373- self .assertEqual (response .json ().get ("id" ), str (self .scheduler .queue .peek (0 ).id ))
377+ self .assertEqual (response .json ().get ("data" ). get ( " id" ), str (self .scheduler .queue .peek (0 ).data . get ( "id" ) ))
374378
375379 def test_pop_queue (self ):
376380 # Add one task to the queue
@@ -395,12 +399,14 @@ def test_pop_queue_filters(self):
395399 f"/queues/{ self .scheduler .scheduler_id } /push" ,
396400 data = first_item .model_dump_json (),
397401 )
402+ first_item_id = response .json ().get ("id" )
398403 self .assertEqual (response .status_code , 201 )
399404 self .assertEqual (1 , self .scheduler .queue .qsize ())
400405
401406 # Add second item to the queue
402407 second_item = create_p_item (self .organisation .id , 2 , data = functions .TestModel (id = "456" , name = "test" ))
403408 response = self .client .post (f"/queues/{ self .scheduler .scheduler_id } /push" , data = second_item .model_dump_json ())
409+ second_item_id = response .json ().get ("id" )
404410 self .assertEqual (response .status_code , 201 )
405411 self .assertEqual (2 , self .scheduler .queue .qsize ())
406412
@@ -409,7 +415,7 @@ def test_pop_queue_filters(self):
409415 f"/queues/{ self .scheduler .scheduler_id } /pop" , json = [{"field" : "name" , "operator" : "eq" , "value" : "test" }]
410416 )
411417 self .assertEqual (200 , response .status_code )
412- self .assertEqual (str ( first_item . id ) , response .json ().get ("id" ))
418+ self .assertEqual (first_item_id , response .json ().get ("id" ))
413419 self .assertEqual (1 , self .scheduler .queue .qsize ())
414420
415421 # Should not return any items
@@ -425,7 +431,7 @@ def test_pop_queue_filters(self):
425431 f"/queues/{ self .scheduler .scheduler_id } /pop" , json = [{"field" : "name" , "operator" : "eq" , "value" : "test" }]
426432 )
427433 self .assertEqual (200 , response .status_code )
428- self .assertEqual (str ( second_item . id ) , response .json ().get ("id" ))
434+ self .assertEqual (second_item_id , response .json ().get ("id" ))
429435 self .assertEqual (0 , self .scheduler .queue .qsize ())
430436
431437 def test_pop_empty (self ):
@@ -449,10 +455,11 @@ def setUp(self):
449455 ),
450456 )
451457 response = self .client .post (f"/queues/{ self .scheduler .scheduler_id } /push" , data = first_item .model_dump_json ())
458+ initial_item_id = response .json ().get ("id" )
452459 self .assertEqual (response .status_code , 201 )
453460 self .assertEqual (1 , self .scheduler .queue .qsize ())
454461
455- self .first_item_api = self .client .get (f"/tasks/{ first_item . id } " ).json ()
462+ self .first_item_api = self .client .get (f"/tasks/{ initial_item_id } " ).json ()
456463
457464 # Add second item to the queue
458465 second_item = create_p_item (
@@ -461,10 +468,11 @@ def setUp(self):
461468 data = functions .TestModel (id = "456" , name = "test" ),
462469 )
463470 response = self .client .post (f"/queues/{ self .scheduler .scheduler_id } /push" , data = second_item .model_dump_json ())
471+ second_item_id = response .json ().get ("id" )
464472 self .assertEqual (response .status_code , 201 )
465473 self .assertEqual (2 , self .scheduler .queue .qsize ())
466474
467- self .second_item_api = self .client .get (f"/tasks/{ second_item . id } " ).json ()
475+ self .second_item_api = self .client .get (f"/tasks/{ second_item_id } " ).json ()
468476
469477 def test_create_task (self ):
470478 item = create_p_item (self .organisation .id , 1 )
0 commit comments