66 lines
2.5 KiB
Python
66 lines
2.5 KiB
Python
import requests
|
|
import json
|
|
import time
|
|
import os
|
|
|
|
# Test with a simple text file first to verify the system works
|
|
base_url = 'http://localhost:3015'
|
|
text_file = 'test_simple.txt'
|
|
|
|
print('🚀 Testing with simple text file first...')
|
|
print(f'📁 Using file: {text_file}')
|
|
|
|
if not os.path.exists(text_file):
|
|
print('❌ Test file not found')
|
|
else:
|
|
print('✅ Test file found')
|
|
|
|
# Login first
|
|
login_data = {
|
|
'username': 'jleu3482',
|
|
'password': 'jleu1212'
|
|
}
|
|
|
|
try:
|
|
login_response = requests.post(f'{base_url}/login', data=login_data)
|
|
if login_response.status_code == 200:
|
|
token = login_response.json().get('access_token')
|
|
headers = {'Authorization': f'Bearer {token}'}
|
|
print('✅ Login successful')
|
|
|
|
# Upload the text file
|
|
print('📤 Uploading text file...')
|
|
with open(text_file, 'rb') as file:
|
|
files = {'file': ('test_document.txt', file, 'text/plain')}
|
|
upload_response = requests.post(f'{base_url}/documents/upload', files=files, headers=headers)
|
|
|
|
print(f'Upload response: {upload_response.status_code}')
|
|
if upload_response.status_code == 200:
|
|
print('✅ Upload successful!')
|
|
result = upload_response.json()
|
|
print(f'Upload result: {json.dumps(result, indent=2)}')
|
|
|
|
# Wait for processing
|
|
print('⏳ Waiting for indexing...')
|
|
time.sleep(10)
|
|
|
|
# Test query
|
|
print('🔍 Testing query...')
|
|
query_data = {'query': 'railway', 'top_k': 10}
|
|
query_response = requests.post(f'{base_url}/query', json=query_data, headers=headers)
|
|
|
|
if query_response.status_code == 200:
|
|
query_results = query_response.json()
|
|
response_text = query_results.get("response", "No response")
|
|
print(f'✅ Query successful! Response: {response_text}')
|
|
else:
|
|
print(f'❌ Query failed: {query_response.status_code} - {query_response.text}')
|
|
|
|
else:
|
|
print(f'❌ Upload failed: {upload_response.status_code} - {upload_response.text}')
|
|
|
|
else:
|
|
print(f'❌ Login failed: {login_response.status_code} - {login_response.text}')
|
|
|
|
except Exception as e:
|
|
print(f'❌ Error: {e}') |