Skip to content
Snippets Groups Projects
Commit e1ad0af2 authored by Vincent Texier's avatar Vincent Texier
Browse files

[fix] #59 fix pylint warnings

fix format with black
parent 954f49af
No related branches found
No related tags found
No related merge requests found
...@@ -20,9 +20,9 @@ mypy: ...@@ -20,9 +20,9 @@ mypy:
# check code errors # check code errors
pylint: pylint:
pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W0613 --enable=C0121,C0202,C0321 --jobs=0 duniterpy/ pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W1202,W0613 --enable=C0121,C0202,C0321 --jobs=0 duniterpy/
pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W0613 --enable=C0121,C0202,C0321 --jobs=0 tests/ pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W1202,W0613 --enable=C0121,C0202,C0321 --jobs=0 tests/
pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W0613 --enable=C0121,C0202,C0321 --jobs=0 examples/ pylint --disable=C,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W1202,W0613 --enable=C0121,C0202,C0321 --jobs=0 examples/
# check format # check format
check-format: check-format:
......
...@@ -274,12 +274,20 @@ class API: ...@@ -274,12 +274,20 @@ class API:
error_data = parse_error(await response.text()) error_data = parse_error(await response.text())
raise DuniterError(error_data) raise DuniterError(error_data)
except (TypeError, jsonschema.ValidationError): except (TypeError, jsonschema.ValidationError):
raise ValueError('status code != 200 => %d (%s)' % (response.status, (await response.text()))) raise ValueError(
"status code != 200 => %d (%s)"
% (response.status, (await response.text()))
)
return response return response
async def requests(self, method: str = 'GET', path: str = '', data: Optional[dict] = None, async def requests(
_json: Optional[dict] = None) -> ClientResponse: self,
method: str = "GET",
path: str = "",
data: Optional[dict] = None,
_json: Optional[dict] = None,
) -> ClientResponse:
""" """
Generic requests wrapper on aiohttp Generic requests wrapper on aiohttp
...@@ -292,13 +300,13 @@ class API: ...@@ -292,13 +300,13 @@ class API:
url = self.reverse_url(self.connection_handler.http_scheme, path) url = self.reverse_url(self.connection_handler.http_scheme, path)
if data is not None: if data is not None:
logging.debug("{0} : {1}, data={2}".format(method, url, data)) logging.debug("%s : %s, data=%s", method, url, data)
elif _json is not None: elif _json is not None:
logging.debug("{0} : {1}, json={2}".format(method, url, _json)) logging.debug("%s : %s, json=%s", method, url, _json)
# http header to send json body # http header to send json body
self.headers['Content-Type'] = 'application/json; charset=utf-8' self.headers["Content-Type"] = "application/json; charset=utf-8"
else: else:
logging.debug("{0} : {1}".format(method, url)) logging.debug("%s : %s", method, url)
response = await self.connection_handler.session.request( response = await self.connection_handler.session.request(
method, method,
...@@ -307,7 +315,7 @@ class API: ...@@ -307,7 +315,7 @@ class API:
json=_json, json=_json,
headers=self.headers, headers=self.headers,
proxy=self.connection_handler.proxy, proxy=self.connection_handler.proxy,
timeout=15 timeout=15,
) )
return response return response
...@@ -342,8 +350,12 @@ class Client: ...@@ -342,8 +350,12 @@ class Client:
Main class to create an API client Main class to create an API client
""" """
def __init__(self, _endpoint: Union[str, endpoint.Endpoint], session: Optional[ClientSession] = None, def __init__(
proxy: Optional[str] = None) -> None: self,
_endpoint: Union[str, endpoint.Endpoint],
session: Optional[ClientSession] = None,
proxy: Optional[str] = None,
) -> None:
""" """
Init Client instance Init Client instance
...@@ -370,8 +382,13 @@ class Client: ...@@ -370,8 +382,13 @@ class Client:
self.session = session self.session = session
self.proxy = proxy self.proxy = proxy
async def get(self, url_path: str, params: Optional[dict] = None, rtype: str = RESPONSE_JSON, async def get(
schema: Optional[dict] = None) -> Any: self,
url_path: str,
params: Optional[dict] = None,
rtype: str = RESPONSE_JSON,
schema: Optional[dict] = None,
) -> Any:
""" """
GET request on endpoint host + url_path GET request on endpoint host + url_path
...@@ -403,8 +420,13 @@ class Client: ...@@ -403,8 +420,13 @@ class Client:
return result return result
async def post(self, url_path: str, params: Optional[dict] = None, rtype: str = RESPONSE_JSON, async def post(
schema: Optional[dict] = None) -> Any: self,
url_path: str,
params: Optional[dict] = None,
rtype: str = RESPONSE_JSON,
schema: Optional[dict] = None,
) -> Any:
""" """
POST request on endpoint host + url_path POST request on endpoint host + url_path
...@@ -428,15 +450,21 @@ class Client: ...@@ -428,15 +450,21 @@ class Client:
await parse_response(response, schema) await parse_response(response, schema)
# return the chosen type # return the chosen type
if rtype == RESPONSE_AIOHTTP: result = response # type: Any
return response if rtype == RESPONSE_TEXT:
elif rtype == RESPONSE_TEXT: result = await response.text()
return await response.text()
elif rtype == RESPONSE_JSON: elif rtype == RESPONSE_JSON:
return await response.json() result = await response.json()
return result
async def query(self, query: str, variables: Optional[dict] = None, rtype: str = RESPONSE_JSON, async def query(
schema: Optional[dict] = None) -> Any: self,
query: str,
variables: Optional[dict] = None,
rtype: str = RESPONSE_JSON,
schema: Optional[dict] = None,
) -> Any:
""" """
GraphQL query or mutation request on endpoint GraphQL query or mutation request on endpoint
...@@ -446,17 +474,15 @@ class Client: ...@@ -446,17 +474,15 @@ class Client:
:param schema: Json Schema to validate response (optional, default None) :param schema: Json Schema to validate response (optional, default None)
:return: :return:
""" """
payload = { payload = {"query": query} # type: Dict[str, Union[str, dict]]
'query': query
} # type: Dict[str, Union[str, dict]]
if variables is not None: if variables is not None:
payload['variables'] = variables payload["variables"] = variables
client = API(self.endpoint.conn_handler(self.session, self.proxy)) client = API(self.endpoint.conn_handler(self.session, self.proxy))
# get aiohttp response # get aiohttp response
response = await client.requests('POST', _json=payload) response = await client.requests("POST", _json=payload)
# if schema supplied... # if schema supplied...
if schema is not None: if schema is not None:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment