| import requests |
| from test_utils import BASE_URL, print_result, get_test_user, register_and_login, get_auth_headers |
|
|
| def test_ai_features(): |
| print(f"--- Testing AI Features ---") |
| |
| |
| files = {'file': ('test.jpg', b'fake image data', 'image/jpeg')} |
| response = requests.post(f"{BASE_URL}/ai/upload", files=files) |
| if response.status_code == 401: |
| print_result("AI - Upload (No Token)", True, "Bị chặn chính xác với mã 401") |
| else: |
| print_result("AI - Upload (No Token)", False, f"Status {response.status_code}") |
|
|
| |
| user_data = get_test_user() |
| token = register_and_login(user_data) |
| headers = get_auth_headers(token) |
|
|
| |
| files = {'file': ('test.jpg', b'fake image data', 'image/jpeg')} |
| response = requests.post(f"{BASE_URL}/ai/upload", files=files, headers=headers) |
| if response.status_code == 400: |
| print_result("AI - Upload (Invalid File)", True, "Bị chặn file sai định dạng (HTTP 400)") |
| else: |
| print_result("AI - Upload (Invalid File)", False, f"Status {response.status_code}") |
|
|
| |
| payload = { |
| "text": "", |
| "length_ratio": 0.5 |
| } |
| response = requests.post(f"{BASE_URL}/ai/", json=payload, headers=headers) |
| if response.status_code in [400, 422]: |
| print_result("AI - Summarize (Empty Text)", True, f"Bị chặn validate (HTTP {response.status_code})") |
| else: |
| print_result("AI - Summarize (Empty Text)", False, f"Status {response.status_code}") |
|
|
| |
| special_chars_text = "!@#$%^&*()_+{}|:\"<>?~`-=[]\\;',./" * 5 |
| payload = { |
| "text": special_chars_text, |
| "length_ratio": 0.5 |
| } |
| response = requests.post(f"{BASE_URL}/ai/", json=payload, headers=headers) |
| |
| |
| if response.status_code == 200: |
| summary = response.json().get("summary", "") |
| |
| print_result("AI - Summarize (Special Chars)", True, f"Server xử lý ổn định. AI phản hồi: '{summary}'") |
| else: |
| |
| print_result("AI - Summarize (Special Chars)", True, f"Hệ thống chặn thành công (HTTP {response.status_code})") |
|
|
| if __name__ == "__main__": |
| test_ai_features() |
|
|