Beispiel #1
0
 def __init__(
     self,
     name: str,
     default: JSONSerializableParameterValue = no_default,
     required: bool = True,
     tags: Iterable[str] = None,
 ) -> None:
     super().__init__(name=name,
                      default=default,
                      required=required,
                      tags=tags)
     self.result = PrefectResult(serializer=DateTimeSerializer())
Beispiel #2
0
 def __init__(
     self,
     name: str,
     required: bool = True,
     tags: Iterable[str] = None,
 ) -> None:
     default = no_default if required else None
     super().__init__(name=name,
                      default=default,
                      required=required,
                      tags=tags)
     self.result = PrefectResult(serializer=DateTimeSerializer())
Beispiel #3
0
    def test_serializer_not_configurable(self):
        # By default creates own JSONSerializer
        result = PrefectResult()
        assert isinstance(result.serializer, JSONSerializer)

        # Can specify one manually as well
        serializer = JSONSerializer()
        result = PrefectResult(serializer=serializer)
        assert result.serializer is serializer

        # Can set if it's a JSONSerializer or DateTimeSerializer
        serializer2 = JSONSerializer()
        result.serializer = serializer2
        assert result.serializer is serializer2

        serializer3 = DateTimeSerializer()
        result.serializer = serializer3
        assert result.serializer is serializer3

        # Type errors for other serializer types
        with pytest.raises(TypeError):
            result.serializer = PickleSerializer()
        with pytest.raises(TypeError):
            result = PrefectResult(serializer=PickleSerializer())
 def test_deserialize_returns_objects(self):
     value = pendulum.now()
     serialized = DateTimeSerializer().serialize(value)
     deserialized = DateTimeSerializer().deserialize(serialized)
     assert deserialized == value
 def test_serialize_returns_bytes(self):
     value = pendulum.now()
     serialized = DateTimeSerializer().serialize(value)
     assert isinstance(serialized, bytes)