Skip to content

Commit 98a8037

Browse files
authored
infra: add Model unit tests for delete_model and enable_network_isolation (#1424)
1 parent db66726 commit 98a8037

File tree

2 files changed

+25
-23
lines changed

2 files changed

+25
-23
lines changed

tests/unit/sagemaker/model/test_framework_model.py

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -237,29 +237,6 @@ def test_deploy_update_endpoint_optional_args(sagemaker_session, tmpdir):
237237
sagemaker_session.create_endpoint.assert_not_called()
238238

239239

240-
def test_model_enable_network_isolation(sagemaker_session):
241-
model = DummyFrameworkModel(sagemaker_session=sagemaker_session)
242-
assert model.enable_network_isolation() is False
243-
244-
245-
@patch("sagemaker.fw_utils.tar_and_upload_dir", MagicMock())
246-
@patch("time.strftime", MagicMock(return_value=TIMESTAMP))
247-
def test_model_delete_model(sagemaker_session, tmpdir):
248-
model = DummyFrameworkModel(sagemaker_session, source_dir=str(tmpdir))
249-
model.deploy(instance_type=INSTANCE_TYPE, initial_instance_count=1)
250-
model.delete_model()
251-
252-
sagemaker_session.delete_model.assert_called_with(model.name)
253-
254-
255-
def test_delete_non_deployed_model(sagemaker_session):
256-
model = DummyFrameworkModel(sagemaker_session)
257-
with pytest.raises(
258-
ValueError, match="The SageMaker model must be created first before attempting to delete."
259-
):
260-
model.delete_model()
261-
262-
263240
def test_compile_model_for_inferentia(sagemaker_session, tmpdir):
264241
sagemaker_session.wait_for_compilation_job = Mock(
265242
return_value=DESCRIBE_COMPILATION_JOB_RESPONSE

tests/unit/sagemaker/model/test_model.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,14 @@ def test_prepare_container_def():
5353
assert expected == container_def
5454

5555

56+
def test_model_enable_network_isolation():
57+
model = Model(MODEL_DATA, MODEL_IMAGE)
58+
assert model.enable_network_isolation() is False
59+
60+
model = Model(MODEL_DATA, MODEL_IMAGE, enable_network_isolation=True)
61+
assert model.enable_network_isolation()
62+
63+
5664
@patch("sagemaker.model.Model.prepare_container_def")
5765
@patch("sagemaker.utils.name_from_image")
5866
def test_create_sagemaker_model(name_from_image, prepare_container_def, sagemaker_session):
@@ -468,3 +476,20 @@ def test_transformer_creates_correct_session(local_session, session):
468476
transformer = model.transformer(instance_count=1, instance_type="ml.m5.xlarge")
469477
assert model.sagemaker_session == session.return_value
470478
assert transformer.sagemaker_session == session.return_value
479+
480+
481+
def test_delete_model(sagemaker_session):
482+
model = Model(MODEL_DATA, MODEL_IMAGE, name=MODEL_NAME, sagemaker_session=sagemaker_session)
483+
484+
model.delete_model()
485+
sagemaker_session.delete_model.assert_called_with(model.name)
486+
487+
488+
def test_delete_model_no_name(sagemaker_session):
489+
model = Model(MODEL_DATA, MODEL_IMAGE, sagemaker_session=sagemaker_session)
490+
491+
with pytest.raises(
492+
ValueError, match="The SageMaker model must be created first before attempting to delete."
493+
):
494+
model.delete_model()
495+
sagemaker_session.delete_model.assert_not_called()

0 commit comments

Comments
 (0)