@@ -71,7 +71,7 @@ def _prepare_report(self, request: Dict[str, Any], validate: bool):
7171 try :
7272 validate_report (cleaned_request )
7373 except MultipleInvalid as ex :
74- raise InvalidRequestError ("Invalid report data: {0}" .format (ex ))
74+ raise InvalidRequestError ("Invalid report data: {0}" .format (ex )) from ex
7575 return cleaned_request
7676
7777 def _prepare_transaction (self , request : Dict [str , Any ], validate : bool ):
@@ -80,7 +80,9 @@ def _prepare_transaction(self, request: Dict[str, Any], validate: bool):
8080 try :
8181 validate_transaction (cleaned_request )
8282 except MultipleInvalid as ex :
83- raise InvalidRequestError ("Invalid transaction data: {0}" .format (ex ))
83+ raise InvalidRequestError (
84+ "Invalid transaction data: {0}" .format (ex )
85+ ) from ex
8486 return cleaned_request
8587
8688 def _copy_and_clean (self , data : Any ) -> Any :
@@ -102,14 +104,14 @@ def _handle_success(
102104 """Handle successful response."""
103105 try :
104106 decoded_body = json .loads (body )
105- except ValueError :
107+ except ValueError as ex :
106108 raise MinFraudError (
107109 "Received a 200 response"
108110 " but could not decode the response as "
109111 "JSON: {0}" .format (body ),
110112 200 ,
111113 uri ,
112- )
114+ ) from ex
113115 if "ip_address" in body :
114116 decoded_body ["ip_address" ]["_locales" ] = self ._locales
115117 return model_class (decoded_body ) # type: ignore
0 commit comments