fix(qa11): fix get_token to use form data + fix check() bug
Some checks failed
Aegis CI / lint-and-test (push) Has been cancelled

This commit is contained in:
kitos
2026-05-20 14:27:41 +02:00
parent 4f5370db89
commit 5e18db48d3

View File

@@ -23,21 +23,19 @@ def check(label: str, condition: bool, detail: str = ""):
print(f" {PASS} {label}") print(f" {PASS} {label}")
else: else:
failed += 1 failed += 1
print(f" {FAIL} {label}" + (f"{detail}" for _ in [1] if detail).__next__() msg = f" {FAIL} {label}"
if detail else f" {FAIL} {label}") if detail:
msg += f"{detail}"
print(msg)
def get_token(username="admin", password="admin123"): def get_token(username="admin", password="admin123"):
# Auth router uses OAuth2PasswordRequestForm (form data)
r = requests.post(f"{BASE}/auth/login", r = requests.post(f"{BASE}/auth/login",
json={"username": username, "password": password})
if r.status_code == 200:
return r.json().get("access_token") or r.json().get("token")
# try form
r = requests.post(f"{BASE}/auth/token",
data={"username": username, "password": password}) data={"username": username, "password": password})
if r.status_code == 200: if r.status_code == 200:
return r.json().get("access_token") return r.json().get("access_token") or r.json().get("token")
raise RuntimeError(f"Login failed: {r.status_code} {r.text}") raise RuntimeError(f"Login failed: {r.status_code} {r.text[:200]}")
def auth(token): def auth(token):