|
16 | 16 |
|
17 | 17 | import pytest
|
18 | 18 |
|
19 |
| -from mock import Mock |
| 19 | +from mock import Mock, MagicMock |
20 | 20 |
|
21 | 21 | from sagemaker.workflow.parameters import ParameterInteger, ParameterString
|
22 | 22 | from sagemaker.workflow.pipeline import Pipeline
|
|
27 | 27 | @pytest.fixture()
|
28 | 28 | def sagemaker_session():
|
29 | 29 | boto_mock = Mock(name="boto_session", region_name="us-west-2")
|
30 |
| - session_mock = Mock( |
| 30 | + session_mock = MagicMock( |
31 | 31 | name="sagemaker_session",
|
32 | 32 | boto_session=boto_mock,
|
33 | 33 | boto_region_name="us-west-2",
|
34 | 34 | config=None,
|
35 | 35 | local_mode=False,
|
| 36 | + account_id=Mock(), |
36 | 37 | )
|
37 | 38 | return session_mock
|
38 | 39 |
|
@@ -173,3 +174,36 @@ def test_lambda_step_no_inputs_outputs(sagemaker_session):
|
173 | 174 | "OutputParameters": [],
|
174 | 175 | "Arguments": {},
|
175 | 176 | }
|
| 177 | + |
| 178 | + |
| 179 | +def test_lambda_step_with_function_arn(sagemaker_session): |
| 180 | + lambda_step = LambdaStep( |
| 181 | + name="MyLambdaStep", |
| 182 | + depends_on=["TestStep"], |
| 183 | + lambda_func=Lambda( |
| 184 | + function_arn="arn:aws:lambda:us-west-2:123456789012:function:sagemaker_test_lambda", |
| 185 | + session=sagemaker_session, |
| 186 | + ), |
| 187 | + inputs={}, |
| 188 | + outputs=[], |
| 189 | + ) |
| 190 | + lambda_step._get_function_arn() |
| 191 | + sagemaker_session.account_id.assert_not_called() |
| 192 | + |
| 193 | + |
| 194 | +def test_lambda_step_without_function_arn(sagemaker_session): |
| 195 | + lambda_step = LambdaStep( |
| 196 | + name="MyLambdaStep", |
| 197 | + depends_on=["TestStep"], |
| 198 | + lambda_func=Lambda( |
| 199 | + function_name="name", |
| 200 | + execution_role_arn="arn:aws:lambda:us-west-2:123456789012:execution_role", |
| 201 | + zipped_code_dir="", |
| 202 | + handler="", |
| 203 | + session=sagemaker_session, |
| 204 | + ), |
| 205 | + inputs={}, |
| 206 | + outputs=[], |
| 207 | + ) |
| 208 | + lambda_step._get_function_arn() |
| 209 | + sagemaker_session.account_id.assert_called_once() |
0 commit comments