Skip to content
Snippets Groups Projects
Commit 10b997ac authored by David Douard's avatar David Douard
Browse files

Use json_dumps/loads in test_serializers.py

instead of json.dumps(..., cls=SWHJSONEncoder) and so.

This simplify a bit the code and make sure the json_dumps/loads
functions are actually tested.
parent 6492e617
No related branches found
No related tags found
1 merge request!202Encode datetime as Timestamp in msgpack
......@@ -15,9 +15,9 @@ from requests.exceptions import ConnectionError
from swh.core.api.classes import PagedResult
from swh.core.api.serializers import (
ENCODERS,
SWHJSONDecoder,
SWHJSONEncoder,
decode_response,
json_dumps,
json_loads,
msgpack_dumps,
msgpack_loads,
)
......@@ -131,33 +131,29 @@ ENCODED_DATA = {
def test_serializers_round_trip_json():
json_data = json.dumps(DATA, cls=SWHJSONEncoder)
actual_data = json.loads(json_data, cls=SWHJSONDecoder)
json_data = json_dumps(DATA)
actual_data = json_loads(json_data)
assert actual_data == DATA
def test_serializers_round_trip_json_extra_types():
expected_original_data = [ExtraType("baz", DATA), "qux"]
data = json.dumps(
expected_original_data, cls=SWHJSONEncoder, extra_encoders=extra_encoders
)
actual_data = json.loads(data, cls=SWHJSONDecoder, extra_decoders=extra_decoders)
data = json_dumps(expected_original_data, extra_encoders=extra_encoders)
actual_data = json_loads(data, extra_decoders=extra_decoders)
assert actual_data == expected_original_data
def test_exception_serializer_round_trip_json():
error_message = "unreachable host"
json_data = json.dumps(
{"exception": ConnectionError(error_message)}, cls=SWHJSONEncoder
)
actual_data = json.loads(json_data, cls=SWHJSONDecoder)
json_data = json_dumps({"exception": ConnectionError(error_message)},)
actual_data = json_loads(json_data)
assert "exception" in actual_data
assert type(actual_data["exception"]) == ConnectionError
assert str(actual_data["exception"]) == error_message
def test_serializers_encode_swh_json():
json_str = json.dumps(DATA, cls=SWHJSONEncoder)
json_str = json_dumps(DATA)
actual_data = json.loads(json_str)
assert actual_data == ENCODED_DATA
......@@ -191,8 +187,8 @@ def test_exception_serializer_round_trip_msgpack():
def test_serializers_generator_json():
data = json.dumps((i for i in range(5)), cls=SWHJSONEncoder)
assert json.loads(data, cls=SWHJSONDecoder) == [i for i in range(5)]
data = json_dumps((i for i in range(5)))
assert json_loads(data) == [i for i in range(5)]
def test_serializers_generator_msgpack():
......@@ -237,6 +233,6 @@ def test_msgpack_extra_encoders_mutation():
def test_json_extra_encoders_mutation():
data = json.dumps({}, cls=SWHJSONEncoder, extra_encoders=extra_encoders)
data = json_dumps({}, extra_encoders=extra_encoders)
assert data is not None
assert ENCODERS[-1][0] != ExtraType
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment