MCPcopy
hub / github.com/fastapi/fastapi / test_custom_encoders

Function test_custom_encoders

tests/test_jsonable_encoder.py:205–225  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

203
204
205def test_custom_encoders():
206 class safe_datetime(datetime):
207 pass
208
209 class MyDict(TypedDict):
210 dt_field: safe_datetime
211
212 instance = MyDict(dt_field=safe_datetime.now())
213
214 encoded_instance = jsonable_encoder(
215 instance, custom_encoder={safe_datetime: lambda o: o.strftime("%H:%M:%S")}
216 )
217 assert encoded_instance["dt_field"] == instance["dt_field"].strftime("%H:%M:%S")
218
219 encoded_instance = jsonable_encoder(
220 instance, custom_encoder={datetime: lambda o: o.strftime("%H:%M:%S")}
221 )
222 assert encoded_instance["dt_field"] == instance["dt_field"].strftime("%H:%M:%S")
223
224 encoded_instance2 = jsonable_encoder(instance)
225 assert encoded_instance2["dt_field"] == instance["dt_field"].isoformat()
226
227
228def test_custom_enum_encoders():

Callers

nothing calls this directly

Calls 2

jsonable_encoderFunction · 0.90
MyDictClass · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…