Esempio n. 1
0
    def test_should_validate(self):
        field = SchemaField(self.test_schema_cls)
        request = request_factory.get_request(context_params={"crud_action": CrudActions.UPDATE_DETAIL})
        result = field.validate(request, {"name": 1})

        assert_that(result, instance_of(ValidationResult))
        assert_that(result.is_success, equal_to(False))
        assert_that(result.reason, has_entry("name", "Expected type string"))
Esempio n. 2
0
    def test_should_validate(self):
        field = SchemaField(self.test_schema_cls)
        request = request_factory.get_request(
            context_params={'crud_action': CrudActions.UPDATE_DETAIL})
        result = field.validate(request, {'name': 1})

        assert_that(result, instance_of(ValidationResult))
        assert_that(result.is_success, equal_to(False))
        assert_that(result.reason, has_entry('name', 'Expected type string'))
Esempio n. 3
0
    def test_should_validate_with_overridden_validator(self):
        class TestValidator(DefaultSchemaValidation):
            def __init__(self, schema_cls):
                super(TestValidator, self).__init__(schema_cls)

            def validate_data(self, data, fields_to_validate=None):
                return {"name": "Custom Validation Failed"}

        field = SchemaField(of_type=self.test_schema_cls, validator_cls=TestValidator)

        result = field.validate(None, {"name": 1})

        assert_that(result, instance_of(ValidationResult))
        assert_that(result.is_success, equal_to(False))
        assert_that(result.reason, has_entry("name", "Custom Validation Failed"))
Esempio n. 4
0
    def test_should_validate_with_overridden_validator(self):
        class TestValidator(DefaultSchemaValidation):
            def __init__(self, schema_cls):
                super(TestValidator, self).__init__(schema_cls)

            def validate_data(self, data, fields_to_validate=None):
                return {'name': 'Custom Validation Failed'}

        field = SchemaField(of_type=self.test_schema_cls,
                            validator_cls=TestValidator)

        result = field.validate(None, {'name': 1})

        assert_that(result, instance_of(ValidationResult))
        assert_that(result.is_success, equal_to(False))
        assert_that(result.reason, has_entry('name',
                                             'Custom Validation Failed'))