Files
chat/tests/test_event_details_api.sh
Andrey K. Choi 3050e084fa
All checks were successful
continuous-integration/drone/push Build is passing
main functions commit
2025-10-19 19:50:00 +09:00

79 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
echo "🚨 Testing Emergency Event Details API"
echo "=" $(printf "%0.s=" {1..50})
# Сначала получаем токен авторизации
echo "🔑 Getting authentication token..."
TOKEN=$(curl -s -X POST "http://localhost:8001/api/v1/auth/login" \
-H "Content-Type: application/json" \
-d '{"username": "testuser", "password": "testpass"}' | \
jq -r '.access_token')
if [ "$TOKEN" = "null" ] || [ -z "$TOKEN" ]; then
echo "❌ Failed to authenticate"
exit 1
fi
echo "✅ Authentication successful"
# Создаем тестовое событие
echo "📝 Creating test emergency event..."
EVENT_RESPONSE=$(curl -s -X POST "http://localhost:8002/api/v1/emergency/events" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"latitude": 55.7558,
"longitude": 37.6176,
"alert_type": "general",
"message": "Test emergency for detailed API",
"address": "Test Address, Moscow",
"contact_emergency_services": true,
"notify_emergency_contacts": true
}')
EVENT_ID=$(echo $EVENT_RESPONSE | jq -r '.id')
if [ "$EVENT_ID" = "null" ] || [ -z "$EVENT_ID" ]; then
echo "❌ Failed to create emergency event"
echo "Response: $EVENT_RESPONSE"
exit 1
fi
echo "✅ Created emergency event with ID: $EVENT_ID"
# Добавляем ответ к событию
echo "💬 Adding response to the event..."
RESPONSE_DATA=$(curl -s -X POST "http://localhost:8002/api/v1/emergency/events/$EVENT_ID/respond" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"response_type": "help_on_way",
"message": "Test response for API testing",
"eta_minutes": 15
}')
echo "✅ Added response to event"
# Тестируем получение детальной информации
echo ""
echo "🔍 Testing detailed event information API..."
DETAILED_RESPONSE=$(curl -s -X GET "http://localhost:8002/api/v1/emergency/events/$EVENT_ID" \
-H "Authorization: Bearer $TOKEN")
echo "Response:"
echo $DETAILED_RESPONSE | jq '.'
# Тестируем получение краткой информации
echo ""
echo "📋 Testing brief event information API..."
BRIEF_RESPONSE=$(curl -s -X GET "http://localhost:8002/api/v1/emergency/events/$EVENT_ID/brief" \
-H "Authorization: Bearer $TOKEN")
echo "Brief Response:"
echo $BRIEF_RESPONSE | jq '.'
echo ""
echo "=" $(printf "%0.s=" {1..50})
echo "🎯 Test completed!"
echo "Event ID for manual testing: $EVENT_ID"