Files
Tests/utils/http_client.py
2026-05-06 22:41:53 +03:30

46 lines
890 B
Python

import requests
import time
import redis
from utils.yaml_loader import load_config
redis_client = redis.Redis(
host="redis",
port=6379,
decode_responses=True
)
config = load_config()
def http_request(method, url, authenticated=True, **kwargs):
start = time.time()
headers = kwargs.pop("headers", {})
if authenticated:
token_key = config["flows"]["auth"]["login"]["store_redis"]["key"]
token = redis_client.get(token_key)
if token:
headers["Authorization"] = f"Bearer {token}"
response = requests.request(
method,
url,
headers=headers,
**kwargs
)
latency = time.time() - start
try:
data = response.json()
except Exception:
data = response.text
return {
"status": response.status_code,
"data": data,
"latency": latency
}