Skip to content

Commit 3cc2b1e

Browse files
committed
fix: Skip alias tests in Pydantic v1
1 parent 15c7954 commit 3cc2b1e

File tree

1 file changed

+18
-8
lines changed

1 file changed

+18
-8
lines changed

tests/test_aliases.py

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ def test_dict_default_uses_field_names(
9797
model: Union[Type[PydanticUser], Type[SQLModelUser]],
9898
):
9999
user = model(fullName="Dana")
100-
data = user.dict()
100+
data = user.model_dump()
101101
assert "full_name" in data
102102
assert "fullName" not in data
103103
assert data["full_name"] == "Dana"
@@ -111,7 +111,7 @@ def test_dict_default_uses_aliases(
111111
model: Union[Type[PydanticUser], Type[SQLModelUser]],
112112
):
113113
user = model(fullName="Dana")
114-
data = user.dict(by_alias=True)
114+
data = user.model_dump(by_alias=True)
115115
assert "fullName" in data
116116
assert "full_name" not in data
117117
assert data["fullName"] == "Dana"
@@ -125,17 +125,27 @@ def test_json_by_alias(
125125
model: Union[Type[PydanticUser], Type[SQLModelUser]],
126126
):
127127
user = model(fullName="Frank")
128-
json_data = user.json(by_alias=True)
128+
json_data = user.model_dump_json(by_alias=True)
129129
assert ('"fullName":"Frank"' in json_data) or ('"fullName": "Frank"' in json_data)
130130
assert "full_name" not in json_data
131131

132132

133-
class PydanticUserV2(BaseModel):
134-
first_name: str = PField(validation_alias="firstName", serialization_alias="f_name")
133+
# Pydantic v2 specific models - only define if we're running Pydantic v2
134+
if VERSION.startswith("2."):
135135

136+
class PydanticUserV2(BaseModel):
137+
first_name: str = PField(
138+
validation_alias="firstName", serialization_alias="f_name"
139+
)
136140

137-
class SQLModelUserV2(SQLModel):
138-
first_name: str = Field(validation_alias="firstName", serialization_alias="f_name")
141+
class SQLModelUserV2(SQLModel):
142+
first_name: str = Field(
143+
validation_alias="firstName", serialization_alias="f_name"
144+
)
145+
else:
146+
# Dummy classes for Pydantic v1 to prevent import errors
147+
PydanticUserV2 = None
148+
SQLModelUserV2 = None
139149

140150

141151
@pytest.mark.skipif(
@@ -159,7 +169,7 @@ def test_serialize_with_serialization_alias(
159169
model: Union[Type[PydanticUserV2], Type[SQLModelUserV2]],
160170
):
161171
user = model(firstName="Jane")
162-
data = user.dict(by_alias=True)
172+
data = user.model_dump(by_alias=True)
163173
assert "f_name" in data
164174
assert "firstName" not in data
165175
assert "first_name" not in data

0 commit comments

Comments
 (0)