def test_dump_load_unchanged(data): # logger.info(data) print(data) # logger.setLevel(logging.DEBUG) s = TaggedJSONSerializer() s.loads(s.dumps(data)) # print(s.tags) print(s.dumps(data)) assert s.loads(s.dumps(data)) == data
def test_custom_tag(): class Foo: # noqa: B903, for Python2 compatibility def __init__(self, data): self.data = data class TagFoo(JSONTag): __slots__ = () key = " f" def check(self, value): return isinstance(value, Foo) def to_json(self, value): return self.serializer.tag(value.data) def to_python(self, value): return Foo(value) s = TaggedJSONSerializer() s.register(TagFoo) assert s.loads(s.dumps(Foo("bar"))).data == "bar"
def test_custom_tag(): class Foo(object): def __init__(self, data): self.data = data class TagFoo(JSONTag): __slots__ = () key = ' f' def check(self, value): return isinstance(value, Foo) def to_json(self, value): return self.serializer.tag(value.data) def to_python(self, value): return Foo(value) s = TaggedJSONSerializer() s.register(TagFoo) assert s.loads(s.dumps(Foo('bar'))).data == 'bar'
def test_dump_load_unchanged(data): s = TaggedJSONSerializer() assert s.loads(s.dumps(data)) == data