|
13 | 13 | DeploymentTimeOut,
|
14 | 14 | DeploymentFailed,
|
15 | 15 | CreateTrainingJobFailed,
|
| 16 | + JobNotFound, |
16 | 17 | )
|
17 | 18 | from sap.aibus.dar.client.model_manager_client import ModelManagerClient
|
18 | 19 | from sap.aibus.dar.client.util.polling import Polling, PollingTimeoutException
|
@@ -463,6 +464,36 @@ def test_is_job_failed(self):
|
463 | 464 | non_failed_job = self._make_job_resource(non_failed_state)
|
464 | 465 | assert ModelManagerClient.is_job_failed(non_failed_job) is False
|
465 | 466 |
|
| 467 | + def test_read_job_by_model_name(self, model_manager_client: ModelManagerClient): |
| 468 | + job1 = self._make_job_resource("SUCCEEDED") |
| 469 | + job2 = self._make_job_resource("SUCCEEDED") |
| 470 | + job2["modelName"] = "my-model-2" |
| 471 | + job_collection_response = {"count": 2, "jobs": [job1, job2]} |
| 472 | + model_manager_client.read_job_collection = create_autospec( |
| 473 | + model_manager_client.read_job_collection, |
| 474 | + return_value=job_collection_response, |
| 475 | + ) |
| 476 | + response = model_manager_client.read_job_by_model_name("my-model-1") |
| 477 | + assert response["modelName"] == "my-model-1" |
| 478 | + assert model_manager_client.read_job_collection.call_count == 1 |
| 479 | + |
| 480 | + def test_read_job_by_model_name_job_not_found( |
| 481 | + self, model_manager_client: ModelManagerClient |
| 482 | + ): |
| 483 | + job1 = self._make_job_resource("SUCCEEDED") |
| 484 | + job2 = self._make_job_resource("SUCCEEDED") |
| 485 | + job2["modelName"] = "my-model-2" |
| 486 | + job_collection_response = {"count": 2, "jobs": [job1, job2]} |
| 487 | + model_manager_client.read_job_collection = create_autospec( |
| 488 | + model_manager_client.read_job_collection, |
| 489 | + return_value=job_collection_response, |
| 490 | + ) |
| 491 | + with pytest.raises(JobNotFound) as exc: |
| 492 | + model_manager_client.read_job_by_model_name("my-model-3") |
| 493 | + expected_message = "Job with model name 'my-model-3' could not be found" |
| 494 | + assert str(exc.value) == expected_message |
| 495 | + assert model_manager_client.read_job_collection.call_count == 1 |
| 496 | + |
466 | 497 | @staticmethod
|
467 | 498 | def _make_job_resource(state):
|
468 | 499 | job_resource = {
|
|
0 commit comments