@@ -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