in probe_scraper/model_validation.py [0:0]
def extend_with_default(validator_class):
"""
Apply default values from the schema when not present.
See https://python-jsonschema.readthedocs.io/en/stable/faq/
"""
validate_properties = validator_class.VALIDATORS["properties"]
def set_defaults(validator, properties, instance, schema):
for property, subschema in properties.items():
if "default" in subschema:
instance.setdefault(property, subschema["default"])
for error in validate_properties(
validator,
properties,
instance,
schema,
):
yield error
return validators.extend(
validator_class,
{"properties": set_defaults},
)