@@ -49,7 +49,7 @@ def test_training_queued_job_init(self):
4949class TestTrainingQueuedJobDescribe :
5050 """Tests for TrainingQueuedJob.describe method"""
5151
52- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
52+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
5353 def test_describe (self , mock_describe_service_job ):
5454 """Test describe returns job details"""
5555 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_RUNNING
@@ -64,7 +64,7 @@ def test_describe(self, mock_describe_service_job):
6464class TestTrainingQueuedJobTerminate :
6565 """Tests for TrainingQueuedJob.terminate method"""
6666
67- @patch ("sagemaker.train.aws_batch.training_queued_job.terminate_service_job " )
67+ @patch ("sagemaker.train.aws_batch.training_queued_job._terminate_service_job " )
6868 def test_terminate (self , mock_terminate_service_job ):
6969 """Test terminate calls terminate API"""
7070 mock_terminate_service_job .return_value = {}
@@ -74,7 +74,7 @@ def test_terminate(self, mock_terminate_service_job):
7474
7575 mock_terminate_service_job .assert_called_once_with (JOB_ARN , REASON )
7676
77- @patch ("sagemaker.train.aws_batch.training_queued_job.terminate_service_job " )
77+ @patch ("sagemaker.train.aws_batch.training_queued_job._terminate_service_job " )
7878 def test_terminate_default_reason (self , mock_terminate_service_job ):
7979 """Test terminate with default reason"""
8080 mock_terminate_service_job .return_value = {}
@@ -89,7 +89,7 @@ def test_terminate_default_reason(self, mock_terminate_service_job):
8989class TestTrainingQueuedJobWait :
9090 """Tests for TrainingQueuedJob.wait method"""
9191
92- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
92+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
9393 def test_wait_immediate_completion (self , mock_describe_service_job ):
9494 """Test wait returns immediately when job is completed"""
9595 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_SUCCEEDED
@@ -99,7 +99,7 @@ def test_wait_immediate_completion(self, mock_describe_service_job):
9999
100100 assert result ["status" ] == JOB_STATUS_SUCCEEDED
101101
102- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
102+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
103103 def test_wait_with_polling (self , mock_describe_service_job ):
104104 """Test wait polls until job completes"""
105105 mock_describe_service_job .side_effect = [
@@ -114,7 +114,7 @@ def test_wait_with_polling(self, mock_describe_service_job):
114114 assert result ["status" ] == JOB_STATUS_SUCCEEDED
115115 assert mock_describe_service_job .call_count == 3
116116
117- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
117+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
118118 def test_wait_with_timeout (self , mock_describe_service_job ):
119119 """Test wait respects timeout"""
120120 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_RUNNING
@@ -128,7 +128,7 @@ def test_wait_with_timeout(self, mock_describe_service_job):
128128 assert end_time - start_time >= 2
129129 assert result ["status" ] == JOB_STATUS_RUNNING
130130
131- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
131+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
132132 def test_wait_job_failed (self , mock_describe_service_job ):
133133 """Test wait returns failed status"""
134134 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_FAILED
@@ -144,7 +144,7 @@ class TestTrainingQueuedJobGetModelTrainer:
144144
145145 @patch ("sagemaker.train.aws_batch.training_queued_job._remove_system_tags_in_place_in_model_trainer_object" )
146146 @patch ("sagemaker.train.aws_batch.training_queued_job._construct_model_trainer_from_training_job_name" )
147- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
147+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
148148 def test_get_model_trainer_success (self , mock_describe_service_job , mock_construct_trainer , mock_remove_tags ):
149149 """Test get_model_trainer returns ModelTrainer when training job created"""
150150 # Return a real dict (not a mock) so nested dict access works
@@ -160,7 +160,7 @@ def test_get_model_trainer_success(self, mock_describe_service_job, mock_constru
160160 mock_construct_trainer .assert_called_once ()
161161 mock_remove_tags .assert_called_once_with (mock_trainer )
162162
163- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
163+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
164164 def test_get_model_trainer_no_training_job_pending (self , mock_describe_service_job ):
165165 """Test get_model_trainer raises error when job still pending"""
166166 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_PENDING
@@ -170,7 +170,7 @@ def test_get_model_trainer_no_training_job_pending(self, mock_describe_service_j
170170 with pytest .raises (NoTrainingJob ):
171171 queued_job .get_model_trainer ()
172172
173- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
173+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
174174 def test_get_model_trainer_no_latest_attempt (self , mock_describe_service_job ):
175175 """Test get_model_trainer raises error when latestAttempt missing"""
176176 resp = DESCRIBE_SERVICE_JOB_RESP_SUCCEEDED .copy ()
@@ -186,7 +186,7 @@ def test_get_model_trainer_no_latest_attempt(self, mock_describe_service_job):
186186class TestTrainingQueuedJobResult :
187187 """Tests for TrainingQueuedJob.result method"""
188188
189- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
189+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
190190 def test_result_success (self , mock_describe_service_job ):
191191 """Test result returns job result when completed"""
192192 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_SUCCEEDED
@@ -196,7 +196,7 @@ def test_result_success(self, mock_describe_service_job):
196196
197197 assert result ["status" ] == JOB_STATUS_SUCCEEDED
198198
199- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
199+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
200200 def test_result_timeout (self , mock_describe_service_job ):
201201 """Test result raises TimeoutError when timeout exceeded"""
202202 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_RUNNING
@@ -210,7 +210,7 @@ def test_result_timeout(self, mock_describe_service_job):
210210class TestTrainingQueuedJobAsync :
211211 """Tests for TrainingQueuedJob async methods"""
212212
213- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
213+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
214214 def test_fetch_job_results_success (self , mock_describe_service_job ):
215215 """Test fetch_job_results returns result when job succeeds"""
216216 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_SUCCEEDED
@@ -220,7 +220,7 @@ def test_fetch_job_results_success(self, mock_describe_service_job):
220220
221221 assert result ["status" ] == JOB_STATUS_SUCCEEDED
222222
223- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
223+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
224224 def test_fetch_job_results_failed (self , mock_describe_service_job ):
225225 """Test fetch_job_results raises error when job fails"""
226226 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_FAILED
@@ -230,7 +230,7 @@ def test_fetch_job_results_failed(self, mock_describe_service_job):
230230 with pytest .raises (RuntimeError ):
231231 asyncio .run (queued_job .fetch_job_results ())
232232
233- @patch ("sagemaker.train.aws_batch.training_queued_job.describe_service_job " )
233+ @patch ("sagemaker.train.aws_batch.training_queued_job._describe_service_job " )
234234 def test_fetch_job_results_timeout (self , mock_describe_service_job ):
235235 """Test fetch_job_results raises TimeoutError when timeout exceeded"""
236236 mock_describe_service_job .return_value = DESCRIBE_SERVICE_JOB_RESP_RUNNING
0 commit comments