Implements Object Defaults

This commit is contained in:
2025-04-13 02:37:21 -03:00
parent 62f3f9b1c5
commit 7272b1a74b
7 changed files with 71 additions and 15 deletions

View File

@@ -256,3 +256,28 @@ class TestSchemaConverter(TestCase):
model_set = SchemaConverter.build(schema_set)
self.assertEqual(model_set().friends, {"John", "Jane"})
def test_default_for_object(self):
schema = {
"title": "Person",
"description": "A person",
"type": "object",
"properties": {
"address": {
"type": "object",
"properties": {
"street": {"type": "string"},
"city": {"type": "string"},
},
"default": {"street": "123 Main St", "city": "Springfield"},
},
},
"required": ["address"],
}
model = SchemaConverter.build(schema)
obj = model(address={"street": "123 Main St", "city": "Springfield"})
self.assertEqual(obj.address.street, "123 Main St")
self.assertEqual(obj.address.city, "Springfield")