Print the response if validation fails
This commit is contained in:
parent
e0ea4c86fa
commit
2fa61fb195
|
@ -3,6 +3,7 @@ from abc import ABC, abstractmethod
|
||||||
from alpaca.common.exceptions import APIError
|
from alpaca.common.exceptions import APIError
|
||||||
from glom import glom
|
from glom import glom
|
||||||
from oandapyV20.exceptions import V20Error
|
from oandapyV20.exceptions import V20Error
|
||||||
|
from pydantic.error_wrappers import ValidationError
|
||||||
|
|
||||||
from core.lib import schemas
|
from core.lib import schemas
|
||||||
from core.util import logs
|
from core.util import logs
|
||||||
|
@ -131,7 +132,12 @@ class BaseExchange(ABC):
|
||||||
def validate_response(self, response, method):
|
def validate_response(self, response, method):
|
||||||
schema = self.get_schema(method)
|
schema = self.get_schema(method)
|
||||||
# Return a dict of the validated response
|
# Return a dict of the validated response
|
||||||
|
try:
|
||||||
response_valid = schema(**response).dict()
|
response_valid = schema(**response).dict()
|
||||||
|
except ValidationError as e:
|
||||||
|
log.error(f"Error validating {method} response: {response}")
|
||||||
|
log.error(f"Errors: {e}")
|
||||||
|
raise GenericAPIError("Error validating response")
|
||||||
return response_valid
|
return response_valid
|
||||||
|
|
||||||
def call(self, method, *args, **kwargs):
|
def call(self, method, *args, **kwargs):
|
||||||
|
@ -198,6 +204,10 @@ class BaseExchange(ABC):
|
||||||
def post_trade(self, trade):
|
def post_trade(self, trade):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@abstractmethod
|
||||||
|
def close_trade(self, trade_id):
|
||||||
|
pass
|
||||||
|
|
||||||
@abstractmethod
|
@abstractmethod
|
||||||
def get_trade(self, trade_id):
|
def get_trade(self, trade_id):
|
||||||
pass
|
pass
|
||||||
|
|
Loading…
Reference in New Issue