|
12 | 12 |
|
13 | 13 | @schema.include(path="/error", method="GET").parametrize() |
14 | 14 | def test_api(case): |
15 | | - response = case.call() |
16 | | - assert response.status_code >= 500, "this api errors on purpose" |
| 15 | + try: |
| 16 | + response = case.call() |
| 17 | + debug_info = ( |
| 18 | + f"[DEBUG] Request URL: {getattr(response.request, 'url', None)}\n" |
| 19 | + f"[DEBUG] Request method: {getattr(response.request, 'method', None)}\n" |
| 20 | + f"[DEBUG] Response status: {getattr(response, 'status_code', None)}\n" |
| 21 | + f"[DEBUG] Response headers: {dict(getattr(response, 'headers', {}))}\n" |
| 22 | + f"[DEBUG] Response body: {getattr(response, 'text', None)}\n" |
| 23 | + ) |
| 24 | + print(debug_info) |
| 25 | + assert response.status_code >= 500, "this api errors on purpose" |
| 26 | + except Exception as e: |
| 27 | + # Print debug info even if assertion fails |
| 28 | + if 'response' in locals(): |
| 29 | + print("[EXCEPTION DEBUG] Request URL:", getattr(response.request, 'url', None)) |
| 30 | + print("[EXCEPTION DEBUG] Request method:", getattr(response.request, 'method', None)) |
| 31 | + print("[EXCEPTION DEBUG] Response status:", getattr(response, 'status_code', None)) |
| 32 | + print("[EXCEPTION DEBUG] Response headers:", dict(getattr(response, 'headers', {}))) |
| 33 | + print("[EXCEPTION DEBUG] Response body:", getattr(response, 'text', None)) |
| 34 | + print("[EXCEPTION]", e) |
| 35 | + raise |
17 | 36 |
|
18 | 37 |
|
19 | 38 | @schema.include(path="/valid", method="GET").parametrize() |
|
0 commit comments