Skip to content

Commit 5b57ca0

Browse files
committed
chore(test): update ssm mocking
1 parent a916706 commit 5b57ca0

File tree

2 files changed

+18
-23
lines changed

2 files changed

+18
-23
lines changed

tests/conftest.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import os
22

33
import boto3
4+
import moto
45
import pytest
5-
from moto import mock_ssm
66

77

88
@pytest.fixture(scope="function")
@@ -17,7 +17,7 @@ def aws_credentials():
1717

1818
@pytest.fixture(scope="function")
1919
def ssm(aws_credentials):
20-
with mock_ssm():
20+
with moto.mock_aws():
2121
yield boto3.client("ssm")
2222

2323

tests/test_main.py

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
11
import logging
22

33
import pytest
4-
from pydantic import (
5-
BaseModel,
6-
)
4+
from pydantic import BaseModel
75
from pydantic_settings import SettingsConfigDict
86

9-
from pydantic_ssm_settings import (
10-
AwsSsmSourceConfig,
11-
SsmSettingsConfigDict,
12-
)
7+
from pydantic_ssm_settings import AwsSsmSourceConfig, SsmSettingsConfigDict
138

149
logger = logging.getLogger("pydantic_ssm_settings")
1510
logger.setLevel(logging.DEBUG)
@@ -38,33 +33,33 @@ def test_ssm_prefix_must_be_absolute():
3833

3934

4035
def test_lookup_from_ssm(ssm):
41-
ssm.put_parameter(Name="/foo", Value="bar")
36+
ssm.put_parameter(Name="/foo", Value="bar", Type="String")
4237
settings = SimpleSettings()
4338
assert settings.foo == "bar"
4439

4540

4641
def test_lookup_from_ssm_with_prefix(ssm):
47-
ssm.put_parameter(Name="/asdf/foo", Value="bar")
42+
ssm.put_parameter(Name="/asdf/foo", Value="bar", Type="String")
4843
settings = SimpleSettings(_ssm_prefix="/asdf")
4944
assert settings.foo == "bar"
5045

5146

5247
def test_casting(ssm):
53-
ssm.put_parameter(Name="/foo", Value="xyz123")
54-
ssm.put_parameter(Name="/bar", Value="99")
48+
ssm.put_parameter(Name="/foo", Value="xyz123", Type="String")
49+
ssm.put_parameter(Name="/bar", Value="99", Type="String")
5550
settings = IntSettings()
5651
assert isinstance(settings.bar, int)
5752
assert settings.bar == 99
5853

5954

6055
def test_parameter_override(ssm):
61-
ssm.put_parameter(Name="/foo", Value="ssm_bar")
56+
ssm.put_parameter(Name="/foo", Value="ssm_bar", Type="String")
6257
s = SimpleSettings(foo="param_bar")
6358
assert s.foo == "param_bar"
6459

6560

6661
def test_dotenv_override(tmp_path, ssm):
67-
ssm.put_parameter(Name="/foo", Value="ssm_bar")
62+
ssm.put_parameter(Name="/foo", Value="ssm_bar", Type="String")
6863
p = tmp_path / ".env"
6964
p.write_text("foo=dotenv_bar")
7065

@@ -73,7 +68,7 @@ def test_dotenv_override(tmp_path, ssm):
7368

7469

7570
def test_env_override(env, ssm):
76-
ssm.put_parameter(Name="/foo", Value="ssm_bar")
71+
ssm.put_parameter(Name="/foo", Value="ssm_bar", Type="String")
7772
env.set("foo", "env_bar")
7873
s = SimpleSettings()
7974
assert s.foo == "env_bar"
@@ -82,26 +77,26 @@ def test_env_override(env, ssm):
8277
def test_secret_override(tmp_path, ssm):
8378
p = tmp_path / "foo"
8479
p.write_text("secret_bar")
85-
ssm.put_parameter(Name="/foo", Value="ssm_bar")
80+
ssm.put_parameter(Name="/foo", Value="ssm_bar", Type="String")
8681
s = SimpleSettings(_secrets_dir=tmp_path)
8782
assert s.foo == "secret_bar"
8883

8984

9085
def test_nested_parameters(ssm):
91-
ssm.put_parameter(Name="/foo/bar", Value="bar_value")
86+
ssm.put_parameter(Name="/foo/bar", Value="bar_value", Type="String")
9287
settings = ParentSetting()
9388
assert settings.foo.bar == "bar_value"
9489

9590

9691
def test_ssm_parameter_json(ssm):
97-
ssm.put_parameter(Name="/foo", Value='{"bar": "xyz123"}')
92+
ssm.put_parameter(Name="/foo", Value='{"bar": "xyz123"}', Type="String")
9893
settings = ParentSetting()
9994
assert settings.foo.bar == "xyz123"
10095

10196

10297
def test_ssm_parameter_json_override(ssm):
103-
ssm.put_parameter(Name="/foo", Value='{"bar": "xyz123"}')
104-
ssm.put_parameter(Name="/foo/bar", Value="overwritten")
98+
ssm.put_parameter(Name="/foo", Value='{"bar": "xyz123"}', Type="String")
99+
ssm.put_parameter(Name="/foo/bar", Value="overwritten", Type="String")
105100
settings = ParentSetting()
106101
assert settings.foo.bar == "overwritten"
107102

@@ -112,7 +107,7 @@ class CaseInsensitiveSettings(AwsSsmSourceConfig):
112107

113108

114109
def test_case_insensitivity(ssm):
115-
ssm.put_parameter(Name="/FOO", Value="bar")
110+
ssm.put_parameter(Name="/FOO", Value="bar", Type="String")
116111
settings = CaseInsensitiveSettings()
117112
assert settings.foo == "bar"
118113

@@ -123,6 +118,6 @@ class CustomConfigDict(AwsSsmSourceConfig):
123118

124119

125120
def test_parameters_from_model_config(ssm):
126-
ssm.put_parameter(Name="/asdf/foo", Value="bar")
121+
ssm.put_parameter(Name="/asdf/foo", Value="bar", Type="String")
127122
settings = CustomConfigDict()
128123
assert settings.foo == "bar"

0 commit comments

Comments
 (0)