#!/bin/bash if [ -z "$1" ]; then BASE_URL="https://nexusbert-style.hf.space" else BASE_URL="$1" fi echo "=== Testing Style GPT API ===" echo "Base URL: $BASE_URL" echo "Usage: $0 [base_url]" echo "Example: $0 http://localhost:7860" echo "" echo "1. Testing GET / (Root endpoint)" curl -X GET "$BASE_URL/" \ -H "Content-Type: application/json" \ -w "\nHTTP Status: %{http_code}\n\n" echo "2. Testing GET /health" curl -X GET "$BASE_URL/health" \ -H "Content-Type: application/json" \ -w "\nHTTP Status: %{http_code}\n\n" echo "3. Testing POST /text (Text-only chat)" curl -X POST "$BASE_URL/text" \ -H "Content-Type: application/json" \ -d '{ "message": "Hello, what colors go well with blue?", "session_id": "test-session-1" }' \ -w "\nHTTP Status: %{http_code}\n\n" echo "4. Testing POST /chat (Chat with optional images - text only)" curl -X POST "$BASE_URL/chat" \ -H "Content-Type: application/json" \ -d '{ "message": "What should I wear with a black jacket?", "session_id": "test-session-2", "images": null }' \ -w "\nHTTP Status: %{http_code}\n\n" echo "5. Testing POST /chat (Chat with wardrobe)" curl -X POST "$BASE_URL/chat" \ -H "Content-Type: application/json" \ -d '{ "message": "Suggest an outfit for a casual meeting", "session_id": "test-session-3", "wardrobe": [ { "category": "shirt", "style": "casual", "color": "white", "brand": "Zara", "name": "White casual shirt" }, { "category": "pants", "style": "formal", "color": "navy", "brand": "H&M", "name": "Navy trousers" } ] }' \ -w "\nHTTP Status: %{http_code}\n\n" echo "6. Testing POST /chat/upload (File upload - text only)" curl -X POST "$BASE_URL/chat/upload" \ -F "message=What colors match with red?" \ -F "session_id=test-session-4" \ -F "wardrobe=[]" \ -w "\nHTTP Status: %{http_code}\n\n" echo "7. Testing POST /chat/upload/stream (Streaming - text only)" curl -X POST "$BASE_URL/chat/upload/stream" \ -F "message=Tell me about fashion trends" \ -F "session_id=test-session-5" \ -F "wardrobe=[]" \ --no-buffer \ -w "\nHTTP Status: %{http_code}\n\n" echo "=== All tests completed ==="