()
| 899 | |
| 900 | |
| 901 | def test_model_serializer_nested_models() -> None: |
| 902 | class Model(BaseModel): |
| 903 | x: int |
| 904 | inner: Optional['Model'] |
| 905 | |
| 906 | @model_serializer(mode='wrap') |
| 907 | def ser_model(self, handler: Callable[['Model'], dict[str, Any]]) -> dict[str, Any]: |
| 908 | inner = handler(self) |
| 909 | inner['x'] += 1 |
| 910 | return inner |
| 911 | |
| 912 | assert Model(x=0, inner=None).model_dump() == {'x': 1, 'inner': None} |
| 913 | |
| 914 | assert Model(x=2, inner=Model(x=1, inner=Model(x=0, inner=None))).model_dump() == { |
| 915 | 'x': 3, |
| 916 | 'inner': {'x': 2, 'inner': {'x': 1, 'inner': None}}, |
| 917 | } |
| 918 | |
| 919 | |
| 920 | def test_pattern_serialize(): |
nothing calls this directly
no test coverage detected