示例#1
0
def test_enum_encoder():
    class TestEnum(enum.Enum):
        A = 1
        B = 'b'

    encoder = encoders.EnumEncoder(TestEnum)

    with pytest.raises(errors.PropertyConstraintViolationError):
        encoder.from_json(123)
    assert encoder.from_json(1) == TestEnum.A
    assert encoder.from_json('b') == TestEnum.B

    with pytest.raises(errors.TypeConstraintViolationError):
        encoder.to_json('well thats not an enum')
    assert encoder.to_json(TestEnum.A) == 1
    assert encoder.to_json(TestEnum.B) == 'b'
示例#2
0
class RemoteStartStopStatus(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(RemoteStartStopStatusEnum)})
示例#3
0
class ErrorCode(types.SimpleType):
    """Field type coercing a string to a ErrorCodeEnum."""
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(types.ErrorCodeEnum)})
示例#4
0
class TriggerReasonEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(TriggerReasonEnum)})
示例#5
0
class SignatureMethodEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(SignatureMethodEnum)})
示例#6
0
class RegistrationStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(RegistrationStatusEnum)})
示例#7
0
class PhaseEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(PhaseEnum)})
示例#8
0
class MessageFormatEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(MessageFormatEnum)})
示例#9
0
class AttributeEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(AttributeEnum)})
示例#10
0
class AuthorizationStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(AuthorizationStatusEnum)})
示例#11
0
class EnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(FooBarEnum)})
示例#12
0
class ValueFormat(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(ValueFormatEnum)})
示例#13
0
class UpdateType(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(UpdateTypeEnum)})
示例#14
0
class UnlockStatus(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(UnlockStatusEnum)})
示例#15
0
class UnitOfMeasure(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(UnitOfMeasureEnum)})
示例#16
0
class LocationEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(LocationEnum)})
示例#17
0
class MeasurandEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(MeasurandEnum)})
示例#18
0
class CertificateStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(CertificateStatusEnum)})
示例#19
0
class OperationalStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(OperationalStatusEnum)})
示例#20
0
class ChangeAvailabilityStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(ChangeAvailabilityStatusEnum)})
示例#21
0
class ReadingContextEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(ReadingContextEnum)})
示例#22
0
class ChargingStateEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(ChargingStateEnum)})
示例#23
0
class SetVariableStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(SetVariableStatusEnum)})
示例#24
0
class ConnectorStatusEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(ConnectorStatusEnum)})
示例#25
0
class TransactionEventEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(TransactionEventEnum)})
示例#26
0
class EncodingMethodEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(EncodingMethodEnum)})
示例#27
0
class MessageType(types.SimpleType):
    """Field type coercing an integer to a MessageTypeEnum."""
    value: int = field(
        metadata={'encoder': encoders.EnumEncoder(MessageTypeEnum)})
示例#28
0
class HashAlgorithmEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(HashAlgorithmEnum)})
示例#29
0
class IdTokenEnumType(types.SimpleType):
    value: str = field(metadata={'encoder': encoders.EnumEncoder(IdTokenEnum)})
示例#30
0
class RecurrencyKindType(types.SimpleType):
    value: str = field(
        metadata={'encoder': encoders.EnumEncoder(RecurrencyKindTypeEnum)})