Skip to content

Commit 15349dd

Browse files
fix Url serialization
1 parent 3962f85 commit 15349dd

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

packages/common-library/src/common_library/serialization.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
from common_library.pydantic_fields_extension import get_type
55
from pydantic import BaseModel, SecretStr
6+
from pydantic_core import Url
67

78

89
def model_dump_with_secrets(
@@ -19,11 +20,15 @@ def model_dump_with_secrets(
1920
if isinstance(field_data, timedelta):
2021
data[field_name] = field_data.total_seconds()
2122

22-
if isinstance(field_data, SecretStr):
23+
elif isinstance(field_data, SecretStr):
2324
if show_secrets:
2425
data[field_name] = field_data.get_secret_value()
2526
else:
2627
data[field_name] = str(field_data)
28+
29+
elif isinstance(field_data, Url):
30+
data[field_name] = str(field_data)
31+
2732
elif isinstance(field_data, dict):
2833
field_type = get_type(settings_obj.model_fields[field_name])
2934
if issubclass(field_type, BaseModel):

services/invitations/tests/unit/test_cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,5 +97,5 @@ def test_list_settings(cli_runner: CliRunner, app_environment: EnvVarsDict):
9797
assert result.exit_code == os.EX_OK, result.output
9898

9999
print(result.output)
100-
settings = TypeAdapter(ApplicationSettings).validate_json(result.output)
100+
settings = ApplicationSettings.model_validate_json(result.output)
101101
assert settings == ApplicationSettings.create_from_envs()

0 commit comments

Comments
 (0)