Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # TODO build a decorator
- def validate_dict(obj, template):
- if isinstance(template, dict):
- for k, v in obj.items():
- validate(v, template.get(k))
- elif not isinstance(obj, template):
- raise TypeError(f"Object {obj} is not instance of {template}")
- def validate_list(obj, template):
- if isinstance(template, list):
- for o in obj:
- validate(o, template[0])
- elif not isinstance(obj, template):
- raise TypeError(f"Object {obj} is not instance of {template}")
- def validate_obj(obj, template):
- if not isinstance(obj, template):
- raise TypeError(f"Object {obj} is not instance of {template}")
- def validate(obj, template):
- if isinstance(obj, dict):
- validate_dict(obj, template)
- elif isinstance(obj, list):
- validate_list(obj, template)
- else:
- validate_obj(obj, template)
Add Comment
Please, Sign In to add comment