Exemplo n.º 1
0
    functools.partial(apply_validator_to_object, validator=schema_validator),
)

properties_validator = generate_object_validator(
    schema=common_properties_schema,
    non_field_validators=properties_non_field_validators,
)

# Now put the properties validator onto the schema validator.
schema_field_validators.add_property_validator('properties',
                                               properties_validator)

#
# Items
#
items_non_field_validators = ValidationList()
items_non_field_validators.add_validator(
    skip_if_empty(skip_if_not_of_type(OBJECT)(schema_validator)))
items_non_field_validators.add_validator(
    skip_if_empty(
        skip_if_not_of_type(ARRAY)(functools.partial(
            apply_validator_to_array, validator=schema_validator), )), )

items_validator = generate_object_validator(
    schema=common_items_schema,
    non_field_validators=items_non_field_validators,
)

# Now put the items validator onto the schema validator
schema_field_validators.add_property_validator('items', items_validator)
Exemplo n.º 2
0
 def add_property_validator(self, key, validator):
     self.add_validator(
         key,
         skip_if_empty(
             skip_if_not_of_type(OBJECT)(apply_functions_to_key(
                 key, validator))))
Exemplo n.º 3
0
def generate_max_length_validator(maxLength, **kwargs):
    """
    Generates a validator for enforcing the maxLength of a string.
    """
    return skip_if_empty(skip_if_not_of_type(STRING)(MaxLengthValidator(maxLength).__call__))
Exemplo n.º 4
0
properties_validator = generate_object_validator(
    schema=common_properties_schema,
    non_field_validators=properties_non_field_validators,
)

# Now put the properties validator onto the schema validator.
schema_field_validators.add_property_validator('properties', properties_validator)


#
# Items
#
items_non_field_validators = ValidationList()
items_non_field_validators.add_validator(
    skip_if_empty(skip_if_not_of_type(OBJECT)(schema_validator))
)
items_non_field_validators.add_validator(
    skip_if_empty(skip_if_not_of_type(ARRAY)(
        functools.partial(apply_validator_to_array, validator=schema_validator),
    )),
)

items_validator = generate_object_validator(
    schema=common_items_schema,
    non_field_validators=items_non_field_validators,
)

# Now put the items validator onto the schema validator
schema_field_validators.add_property_validator('items', items_validator)
Exemplo n.º 5
0
 def add_property_validator(self, key, validator):
     self.add_validator(
         key,
         skip_if_empty(skip_if_not_of_type(OBJECT)(apply_functions_to_key(key, validator)))
     )