Initial commit: Robot ökoszisztéma v2.0 - Stabilizált jármű és szerviz robotok
This commit is contained in:
53
backend/app/tests_internal/diagnostics/check_api.py
Executable file
53
backend/app/tests_internal/diagnostics/check_api.py
Executable file
@@ -0,0 +1,53 @@
|
||||
# /app/tests_internal/diagnostics/check_api.py
|
||||
import requests
|
||||
import json
|
||||
|
||||
# THOUGHT PROCESS:
|
||||
# 1. Az API konténeren belül futva a localhost:8000 a célpont.
|
||||
# 2. Csak olyan végpontokat tesztelünk, amik szerepelnek a v1/api.py-ben.
|
||||
# 3. A 401/405 kódokat elfogadjuk 'OK'-nak, mert azt jelentik, hogy a szerver
|
||||
# látja az útvonalat, csak hitelesítést vagy más HTTP metódust vár.
|
||||
# 4. A 404 azt jelenti, hogy a router nincs jól regisztrálva.
|
||||
# 5. A 500 azt jelenti, hogy a kód elszállt (pl. AttributeError a main.py-ban).
|
||||
|
||||
base_url = 'http://localhost:8000'
|
||||
|
||||
# A valós, api.py-ben definiált útvonalak:
|
||||
tests = [
|
||||
('Health Check', '/health', 'GET'),
|
||||
('Auth Login (Entry)', '/api/v1/auth/login', 'POST'), # Létezik
|
||||
('Catalog Makes', '/api/v1/catalog/makes', 'GET'), # Létezik
|
||||
('Service Hunt', '/api/v1/services/hunt', 'POST'), # Létezik
|
||||
('Admin Health', '/api/v1/admin/health-monitor', 'GET'), # Létezik
|
||||
('My Organizations', '/api/v1/organizations/my', 'GET') # Létezik
|
||||
]
|
||||
|
||||
print('\n--- 🧪 API VÉGPONT DIAGNOSZTIKA ---')
|
||||
print(f"{'Végpont neve':20} | {'Útvonal':25} | {'Állapot'}")
|
||||
print("-" * 65)
|
||||
|
||||
for name, endpoint, method in tests:
|
||||
try:
|
||||
url = f"{base_url}{endpoint}"
|
||||
# A POST hívásokhoz üres adatot küldünk, hogy ne 422-t kapjunk a hiányzó body miatt
|
||||
resp = requests.request(method, url, timeout=5, json={})
|
||||
|
||||
# Logika:
|
||||
# 200: Tökéletes
|
||||
# 401: Él, de login kell (JÓ)
|
||||
# 405: Él, de pl. GET helyett POST kell (JÓ - az útvonal létezik)
|
||||
# 422: Él, de hiányoznak a küldött adatok (JÓ - a validáció működik)
|
||||
|
||||
if resp.status_code in [200, 401, 405, 422]:
|
||||
status_msg = f"✅ OK ({resp.status_code})"
|
||||
elif resp.status_code == 404:
|
||||
status_msg = f"❌ HIÁNYZIK (404)"
|
||||
else:
|
||||
status_msg = f"🔥 SZERVER HIBA ({resp.status_code})"
|
||||
|
||||
print(f"{name:20} | {endpoint:25} | {status_msg}")
|
||||
|
||||
except Exception as e:
|
||||
print(f"{name:20} | {endpoint:25} | 🔌 ELÉRHETETLEN")
|
||||
|
||||
print("\n💡 Megjegyzés: Ha a Health Check továbbra is 500, az a main.py-ban lévő elírás miatt van.")
|
||||
Reference in New Issue
Block a user