def test_enum_field_validates(self): from aenum import Enum class Color(Enum): RED = 'red' field = fields.Enum(Color, by_name=True) assert field.serialize('RED', Color.RED) == 'RED'
def test_enum_field_deserialization(self): from aenum import Enum class Color(Enum): RED = 'red' field = fields.Enum(Color, by_name=True) assert field.deserialize('RED') == Color.RED
def test_metadata_may_be_added_to_enum_field(self): field = fields.Enum(['red', 'blue'], description='A color') assert field.metadata == {'description': 'A color'}
class Validators(Schema): email = fields.Email() colors = fields.Enum(['red', 'blue']) age = fields.Integer(validate=[lambda n: n > 0, lambda n: n < 100])
def test_enum_field_deserialization(self): field = fields.Enum(['red', 'blue']) assert field.deserialize('red') == 'red' with pytest.raises(ValidationError): field.deserialize('notvalid')
class ColorSchema(Schema): color = fields.Enum(['red', 'white', 'blue'], required=True)