python3: always pass strings to json.loads, for 3.5 compatibility (#39092)

This commit is contained in:
Frédéric Péters 2020-01-19 19:46:54 +01:00
parent 5e6226e167
commit 62d08f4243
2 changed files with 7 additions and 7 deletions

View File

@ -51,7 +51,7 @@ class BaseMock(object):
class MaarchMock(BaseMock):
def list_endpoint(self, url, request):
self.requests.append(('list_endpoint', url, request, json.loads(request.body)))
self.requests.append(('list_endpoint', url, request, json.loads(force_text(request.body))))
return {
'content': json.dumps(self.next_response()),
'headers': {
@ -62,12 +62,12 @@ class MaarchMock(BaseMock):
list_endpoint.path = '^/rest/res/list$'
def update_external_infos(self, url, request):
self.requests.append(('update_external_infos', url, request, json.loads(request.body)))
self.requests.append(('update_external_infos', url, request, json.loads(force_text(request.body))))
return json.dumps({})
update_external_infos.path = '^/rest/res/externalInfos$'
def update_status(self, url, request):
self.requests.append(('update_status', url, request, json.loads(request.body)))
self.requests.append(('update_status', url, request, json.loads(force_text(request.body))))
return {
'content': json.dumps(self.next_response()),
'headers': {
@ -78,7 +78,7 @@ class MaarchMock(BaseMock):
update_status.path = '^/rest/res/resource/status$'
def post_courrier(self, url, request):
self.requests.append(('post_courrier', url, request, json.loads(request.body)))
self.requests.append(('post_courrier', url, request, json.loads(force_text(request.body))))
post_courrier.path = '^/rest/res$'

View File

@ -85,7 +85,7 @@ def call_event(request):
'''
logger = logging.getLogger(__name__)
try:
payload = json.loads(request.body)
payload = json.loads(force_text(request.body))
assert isinstance(payload, dict), 'payload is not a JSON object'
assert set(payload.keys()) <= set(['event', 'caller', 'callee', 'data']), \
'payload keys must be "event", "caller", "callee" and optionnaly "data"'
@ -198,7 +198,7 @@ def take_line(request):
'''
logger = logging.getLogger(__name__)
try:
payload = json.loads(request.body)
payload = json.loads(force_text(request.body))
assert isinstance(payload, dict), 'payload is not a JSON object'
assert list(payload.keys()) == ['callee'], 'payload must have only one key: callee'
except (TypeError, ValueError, AssertionError) as e:
@ -219,7 +219,7 @@ def release_line(request):
'''
logger = logging.getLogger(__name__)
try:
payload = json.loads(request.body)
payload = json.loads(force_text(request.body))
assert isinstance(payload, dict), 'payload is not a JSON object'
assert list(payload.keys()) == ['callee'], 'payload must have only one key: callee'
except (TypeError, ValueError, AssertionError) as e: