Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def _validate_static_map_list(self, validator, data, path, strict):
if util.is_map(validator) and not util.is_map(data):
return ["%s : '%s' is not a map" % (path, data)]
if util.is_list(validator) and not util.is_list(data):
return ["%s : '%s' is not a list" % (path, data)]
errors = []
if strict:
data_keys = set(util.get_keys(data))
validator_keys = set(util.get_keys(validator))
for key in data_keys - validator_keys:
error_path = path + DataPath(key)
errors += ['%s: Unexpected element' % error_path]
for key, sub_validator in util.get_iter(validator):
errors += self._validate_item(sub_validator,
data,
path,
strict,
key)
return errors
def _validate_map_list(self, validator, data, path, strict):
errors = []
if not validator.validators:
return errors # No validators, user just wanted a map.
for key in util.get_keys(data):
sub_errors = []
for v in validator.validators:
err = self._validate_item(v, data, path, strict, key)
if err:
sub_errors.append(err)
if len(sub_errors) == len(validator.validators):
# All validators failed, add to errors
for err in sub_errors:
errors += err
return errors
def _validate_static_map_list(self, validator, data, path, strict):
if util.is_map(validator) and not util.is_map(data):
return ["%s : '%s' is not a map" % (path, data)]
if util.is_list(validator) and not util.is_list(data):
return ["%s : '%s' is not a list" % (path, data)]
errors = []
if strict:
data_keys = set(util.get_keys(data))
validator_keys = set(util.get_keys(validator))
for key in data_keys - validator_keys:
error_path = path + DataPath(key)
errors += ['%s: Unexpected element' % error_path]
for key, sub_validator in util.get_iter(validator):
errors += self._validate_item(sub_validator,
data,
path,
strict,
key)
return errors