Added classmethod decorator in Http client #322

Merged
d.zayakin merged 1 commit from d.zayakin/frostfs-testlib:feature-added-classmethod-http-client into master 2024-11-18 15:07:25 +00:00

View file

@ -50,7 +50,8 @@ class HttpClient:
return response
def _attach_response(self, response: httpx.Response):
@classmethod
def _attach_response(cls, response: httpx.Response):
request = response.request
try:
@ -83,12 +84,13 @@ class HttpClient:
f"Response Headers: {response_headers}\n\n"
f"Response Body: {response.text}\n\n"
)
curl_request = self._create_curl_request(request.url, request.method, request.headers, request_body)
curl_request = cls._create_curl_request(request.url, request.method, request.headers, request_body)
reporter.attach(report, "Requests Info")
reporter.attach(curl_request, "CURL")
def _create_curl_request(self, url: str, method: str, headers: httpx.Headers, data: str) -> str:
@classmethod
def _create_curl_request(cls, url: str, method: str, headers: httpx.Headers, data: str) -> str:
headers = " ".join(f'-H "{name.title()}: {value}"' for name, value in headers.items())
data = f" -d '{data}'" if data else ""
# Option -k means no verify SSL