class SUTSchemaFieldsRemoved(SUTSchema): field1 = Field(SUTValidator()) field2 = Field(SUTValidator()) field3 = None # Field removed field4 = None # Field removed field5 = None # Field removed
class SUTSchema(Schema): field1 = Field(SUTValidator()) field2 = Field(SUTValidator()) field1_field2 = FieldCombined(SUTCombinedValidator('field1', 'field2')) field3 = Field(SUTValidator()) field4 = Field(SUTValidator()) field3_field4 = FieldCombined(SUTCombinedValidator('field3', 'field4'), destination='field3')
class SUTSchema(Schema): def field1_is_A(self, values): return values.get('field1', None) == 'A' def field2_is_A(self, values): return values.get('field2', None) == 'A' field1 = Field(SUTValidator()) field2 = Field(SUTValidator()) field3 = Field(SUTValidator(), mandatory=False) field4 = Field(SUTValidator(), mandatory=field1_is_A) field5 = Field(SUTValidator(), mandatory=False, forbidden=field2_is_A)
def test_not_combined_validator(self): try: FieldCombined(SUTValidator()) except TypeError as te: assert_equals( "FieldCombined accepts only CombinedValidator validators", te.args[0]) raise
class SUTSchema(Schema): field = Field(SUTValidator(), default='foo')
def test_custom_inexistent_error(self): validator = SUTValidator(errors={'foo_error': 'Foo Error'}) assert_equals({'test_error': 'Test Error'}, validator.get_list_errors())
def test_custom_errors(self): ERROR_TEXT = 'Test Custom Error' validator = SUTValidator(errors={'test_error': ERROR_TEXT}) assert_equals({'test_error': ERROR_TEXT}, validator.get_list_errors())
def test_default_errors(self): validator = SUTValidator() assert_equals({'test_error': 'Test Error'}, validator.get_list_errors())