@@ -163,3 +163,28 @@ def test_local_transform_job_perform_batch_inference(
163
163
assert len (output_files ) == 2
164
164
assert "file1.out" in output_files
165
165
assert "file2.out" in output_files
166
+
167
+
168
+ @patch ("sagemaker.local.entities._SageMakerContainer" , Mock ())
169
+ @patch ("sagemaker.local.entities.get_docker_host" )
170
+ @patch ("sagemaker.local.entities._perform_request" )
171
+ @patch ("sagemaker.local.entities._LocalTransformJob._perform_batch_inference" )
172
+ def test_start_local_transform_job_from_remote_docker_host (
173
+ m_perform_batch_inference , m_perform_request , m_get_docker_host , local_transform_job
174
+ ):
175
+ input_data = {}
176
+ output_data = {}
177
+ transform_resources = {"InstanceType" : "local" }
178
+ m_get_docker_host .return_value = "some_host"
179
+ perform_request_mock = Mock ()
180
+ m_perform_request .return_value = (perform_request_mock , 200 )
181
+ perform_request_mock .read .return_value = '{"BatchStrategy": "SingleRecord"}'
182
+ local_transform_job .primary_container ["ModelDataUrl" ] = "file:///some/model"
183
+ local_transform_job .start (input_data , output_data , transform_resources , Environment = {})
184
+ endpoints = [
185
+ "http://%s:%d/ping" % ("some_host" , 8080 ),
186
+ "http://%s:%d/execution-parameters" % ("some_host" , 8080 ),
187
+ ]
188
+ calls = m_perform_request .call_args_list
189
+ for call , endpoint in zip (calls , endpoints ):
190
+ assert call [0 ][0 ] == endpoint
0 commit comments