@@ -100,18 +100,20 @@ def check_response(self, response):
100
100
if value_json and isinstance (value_json , basestring ):
101
101
import json
102
102
try :
103
- value = json .loads (value_json )
104
- status = value .get ('error' , None )
105
- if status is None :
106
- status = value ["status" ]
107
- try :
108
- message = value ["value" ]["message" ]
109
- except TypeError :
110
- message = None
111
- else :
112
- message = value .get ('message' , None )
103
+ value = json .loads (value_json )
104
+ status = value .get ('error' , None )
105
+ if status is None :
106
+ status = value ["status" ]
107
+ message = value ["value" ]
108
+ if not isinstance (message , basestring ):
109
+ try :
110
+ message = message ['message' ]
111
+ except TypeError :
112
+ message = None
113
+ else :
114
+ message = value .get ('message' , None )
113
115
except ValueError :
114
- pass
116
+ pass
115
117
116
118
exception_class = ErrorInResponseException
117
119
if status in ErrorCode .NO_SUCH_ELEMENT :
@@ -191,4 +193,4 @@ def check_response(self, response):
191
193
raise exception_class (message , screen , stacktrace )
192
194
193
195
def _value_or_default (self , obj , key , default ):
194
- return obj [key ] if key in obj else default
196
+ return obj [key ] if key in obj else default
0 commit comments