mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-09 01:03:24 +00:00
Removed frozenset
This commit is contained in:
@@ -7,13 +7,10 @@ class Request(object):
|
|||||||
self.method = method
|
self.method = method
|
||||||
self.uri = uri
|
self.uri = uri
|
||||||
self.body = body
|
self.body = body
|
||||||
# make headers a frozenset so it will be hashable
|
self.headers = headers
|
||||||
self.headers = frozenset(headers.items())
|
|
||||||
|
|
||||||
def add_header(self, key, value):
|
def add_header(self, key, value):
|
||||||
tmp = dict(self.headers)
|
self.headers[key] = value
|
||||||
tmp[key] = value
|
|
||||||
self.headers = frozenset(tmp.iteritems())
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def scheme(self):
|
def scheme(self):
|
||||||
|
|||||||
@@ -6,12 +6,6 @@ except ImportError:
|
|||||||
import json
|
import json
|
||||||
|
|
||||||
|
|
||||||
def _json_default(obj):
|
|
||||||
if isinstance(obj, frozenset):
|
|
||||||
return dict(obj)
|
|
||||||
return obj
|
|
||||||
|
|
||||||
|
|
||||||
def deserialize(cassette_string):
|
def deserialize(cassette_string):
|
||||||
data = json.loads(cassette_string)
|
data = json.loads(cassette_string)
|
||||||
requests = [Request._from_dict(r['request']) for r in data]
|
requests = [Request._from_dict(r['request']) for r in data]
|
||||||
@@ -28,8 +22,8 @@ def serialize(cassette_dict):
|
|||||||
cassette_dict['responses']
|
cassette_dict['responses']
|
||||||
)])
|
)])
|
||||||
try:
|
try:
|
||||||
return json.dumps(data, indent=4, default=_json_default)
|
return json.dumps(data, indent=4)
|
||||||
except UnicodeDecodeError as e:
|
except UnicodeDecodeError:
|
||||||
raise UnicodeDecodeError(
|
raise UnicodeDecodeError(
|
||||||
"Error serializing cassette to JSON. ",
|
"Error serializing cassette to JSON. ",
|
||||||
"Does this HTTP interaction contain binary data? ",
|
"Does this HTTP interaction contain binary data? ",
|
||||||
|
|||||||
Reference in New Issue
Block a user