@@ -258,11 +258,45 @@ def test_job_for_microsoft_quantum_results_shots_v2_wrong_type_raises_exception(
258258 except :
259259 self .assertTrue (True )
260260
261+ def test_job_get_results_with_succeeded_status (self ):
262+ """Test that get_results works correctly when job status is 'Succeeded'"""
263+ job_results = self ._get_job_results_with_status ("Succeeded" , "microsoft.quantum-results.v1" , "{\" Histogram\" : [\" [0]\" , 0.50, \" [1]\" , 0.50]}" )
264+ self .assertTrue (len (job_results .keys ()) == 2 )
265+ self .assertEqual (job_results ["[0]" ], 0.50 )
266+ self .assertEqual (job_results ["[1]" ], 0.50 )
267+
268+ def test_job_get_results_with_completed_status (self ):
269+ """Test that get_results works correctly when job status is 'Completed'"""
270+ job_results = self ._get_job_results_with_status ("Completed" , "microsoft.quantum-results.v1" , "{\" Histogram\" : [\" [0]\" , 0.50, \" [1]\" , 0.50]}" )
271+ self .assertTrue (len (job_results .keys ()) == 2 )
272+ self .assertEqual (job_results ["[0]" ], 0.50 )
273+ self .assertEqual (job_results ["[1]" ], 0.50 )
274+
275+ def test_job_get_results_with_failed_status_raises_runtime_error (self ):
276+ """Test that get_results raises RuntimeError when job status is 'Failed'"""
277+ with self .assertRaises (RuntimeError ) as context :
278+ self ._get_job_results_with_status ("Failed" , "microsoft.quantum-results.v1" , "{\" Histogram\" : [\" [0]\" , 0.50, \" [1]\" , 0.50]}" )
279+ self .assertIn ("Cannot retrieve results as job execution failed" , str (context .exception ))
280+ self .assertIn ("FAILED" , str (context .exception ))
281+
282+ def test_job_get_results_with_cancelled_status_raises_runtime_error (self ):
283+ """Test that get_results raises RuntimeError when job status is 'Cancelled'"""
284+ with self .assertRaises (RuntimeError ) as context :
285+ self ._get_job_results_with_status ("Cancelled" , "microsoft.quantum-results.v1" , "{\" Histogram\" : [\" [0]\" , 0.50, \" [1]\" , 0.50]}" )
286+ self .assertIn ("Cannot retrieve results as job execution failed" , str (context .exception ))
287+ self .assertIn ("CANCELLED" , str (context .exception ))
288+
261289 def _get_job_results (self , output_data_format , results_as_json_str ):
262290 job = self ._mock_job (output_data_format , results_as_json_str )
263291
264292 return job .get_results ()
265293
294+ def _get_job_results_with_status (self , status , output_data_format , results_as_json_str ):
295+ job = self ._mock_job (output_data_format , results_as_json_str )
296+ job .details .status = status
297+
298+ return job .get_results ()
299+
266300 def _get_job_results_histogram (self , output_data_format , results_as_json_str ):
267301 job = self ._mock_job (output_data_format , results_as_json_str )
268302
0 commit comments