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'
class RemoteStartStopStatus(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(RemoteStartStopStatusEnum)})
class ErrorCode(types.SimpleType): """Field type coercing a string to a ErrorCodeEnum.""" value: str = field( metadata={'encoder': encoders.EnumEncoder(types.ErrorCodeEnum)})
class TriggerReasonEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(TriggerReasonEnum)})
class SignatureMethodEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(SignatureMethodEnum)})
class RegistrationStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(RegistrationStatusEnum)})
class PhaseEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(PhaseEnum)})
class MessageFormatEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(MessageFormatEnum)})
class AttributeEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(AttributeEnum)})
class AuthorizationStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(AuthorizationStatusEnum)})
class EnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(FooBarEnum)})
class ValueFormat(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(ValueFormatEnum)})
class UpdateType(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(UpdateTypeEnum)})
class UnlockStatus(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(UnlockStatusEnum)})
class UnitOfMeasure(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(UnitOfMeasureEnum)})
class LocationEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(LocationEnum)})
class MeasurandEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(MeasurandEnum)})
class CertificateStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(CertificateStatusEnum)})
class OperationalStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(OperationalStatusEnum)})
class ChangeAvailabilityStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(ChangeAvailabilityStatusEnum)})
class ReadingContextEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(ReadingContextEnum)})
class ChargingStateEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(ChargingStateEnum)})
class SetVariableStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(SetVariableStatusEnum)})
class ConnectorStatusEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(ConnectorStatusEnum)})
class TransactionEventEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(TransactionEventEnum)})
class EncodingMethodEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(EncodingMethodEnum)})
class MessageType(types.SimpleType): """Field type coercing an integer to a MessageTypeEnum.""" value: int = field( metadata={'encoder': encoders.EnumEncoder(MessageTypeEnum)})
class HashAlgorithmEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(HashAlgorithmEnum)})
class IdTokenEnumType(types.SimpleType): value: str = field(metadata={'encoder': encoders.EnumEncoder(IdTokenEnum)})
class RecurrencyKindType(types.SimpleType): value: str = field( metadata={'encoder': encoders.EnumEncoder(RecurrencyKindTypeEnum)})