MCPcopy
hub / github.com/pydantic/pydantic / test_allow_extra

Function test_allow_extra

tests/test_main.py:267–281  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

265
266
267def test_allow_extra():
268 class Model(BaseModel):
269 model_config = ConfigDict(extra='allow')
270 a: float
271
272 m = Model(a='10.2', b=12)
273 assert m.__dict__ == {'a': 10.2}
274 assert m.__pydantic_extra__ == {'b': 12}
275 assert m.a == 10.2
276 assert m.b == 12
277 assert m.model_extra == {'b': 12}
278 m.c = 42
279 assert 'c' not in m.__dict__
280 assert m.__pydantic_extra__ == {'b': 12, 'c': 42}
281 assert m.model_dump() == {'a': 10.2, 'b': 12, 'c': 42}
282
283
284@pytest.mark.parametrize('extra', ['ignore', 'forbid', 'allow'])

Callers

nothing calls this directly

Calls 2

ModelClass · 0.70
model_dumpMethod · 0.45

Tested by

no test coverage detected