mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-09 01:03:24 +00:00
Format with line length 110 to match flake8 make black part of linting check Update travis spec for updated black requirements Add diff output for black on failure update changelog
30 lines
771 B
Python
30 lines
771 B
Python
try:
|
|
import simplejson as json
|
|
except ImportError:
|
|
import json
|
|
|
|
|
|
def deserialize(cassette_string):
|
|
return json.loads(cassette_string)
|
|
|
|
|
|
def serialize(cassette_dict):
|
|
error_message = (
|
|
"Does this HTTP interaction contain binary data? "
|
|
"If so, use a different serializer (like the yaml serializer) "
|
|
"for this request?"
|
|
)
|
|
|
|
try:
|
|
return json.dumps(cassette_dict, indent=4)
|
|
except UnicodeDecodeError as original: # py2
|
|
raise UnicodeDecodeError(
|
|
original.encoding,
|
|
b"Error serializing cassette to JSON",
|
|
original.start,
|
|
original.end,
|
|
original.args[-1] + error_message,
|
|
)
|
|
except TypeError: # py3
|
|
raise TypeError(error_message)
|