File tree 2 files changed +14
-3
lines changed
2 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -9,17 +9,17 @@ class ApiException(Exception):
9
9
@property
10
10
def error (self ):
11
11
"""Returns the first argument used to construct this error."""
12
- return self .args [0 ]
12
+ return self .args [0 ]. get ( 'type' )
13
13
14
14
@property
15
15
def message (self ):
16
16
"""Returns the second argument used to construct this error."""
17
- return self .args [1 ]
17
+ return self .args [0 ]. get ( 'message' )
18
18
19
19
@property
20
20
def detail_message (self ):
21
21
"""Returns the third argument used to construct this error."""
22
- return self .args [2 ]
22
+ return self .args [0 ]. get ( 'detail_message' )
23
23
24
24
25
25
class UnauthorizedException (ApiException ):
Original file line number Diff line number Diff line change @@ -143,6 +143,17 @@ def test_api_errors(self):
143
143
with self .assertRaises (ApiException ):
144
144
self ._api .get ('/doesnotexist' )
145
145
146
+ def test_api_exception_properties (self ):
147
+ with self .assertRaises (ApiException ) as e :
148
+ self ._api .get ('/doesnotexist' )
149
+ api_exception = e .exception
150
+ self .assertEqual (api_exception .error ,
151
+ 'NotFoundError' )
152
+ self .assertEqual (api_exception .message ,
153
+ 'The specified resource does not exist.' )
154
+ self .assertIn ('Could not find resource for full path' ,
155
+ api_exception .detail_message )
156
+
146
157
@unittest .skipIf (not PROXIES , "No proxies defined" )
147
158
def test_get_with_proxy (self ):
148
159
self ._api ._proxies = PROXIES
You can’t perform that action at this time.
0 commit comments