#!/bin/bash

# 术数书 API 测试脚本
# 使用 curl 命令测试 Hyperdrive + NeonDB 术数书查询系统

API_BASE="https://hyperdrive.seekkey.tech"

echo "🚀 术数书 Hyperdrive API 测试"
echo "================================"

# 测试连接
echo ""
echo "🔗 测试数据库连接..."
curl -s "$API_BASE/test-connection" | jq -r '.message // .error // "连接测试完成"'

# 查询表结构
echo ""
echo "📋 查询数据库表结构..."
echo "发现的表:"
curl -s "$API_BASE/query-tables" | jq -r '.tables[]? | "- \(.table_name) (\(.table_schema))"'

# 获取术数书统计
echo ""
echo "📊 术数书统计信息..."
curl -s "$API_BASE/shushu-stats" | jq -r '.existing_tables[]? | "- \(.table_name): \(.record_count) 条记录"'

# 查询术数书内容
echo ""
echo "📚 查询术数书内容 (前3条)..."
echo "书籍信息:"
curl -s "$API_BASE/query-shushu?limit=3" | jq -r '.data[]? | "- ID: \(.id), 标题: \(.title), 作者: \(.author), 类别: \(.category)"'

# 搜索功能测试
echo ""
echo "🔍 搜索测试..."
echo "搜索关键词: 易经"
curl -s "$API_BASE/search-shushu?q=易经&limit=2" | jq -r '.total_matches // 0 | "找到 \(.) 条匹配记录"'

echo "搜索关键词: 八卦"
curl -s "$API_BASE/search-shushu?q=八卦&limit=2" | jq -r '.total_matches // 0 | "找到 \(.) 条匹配记录"'

echo "搜索关键词: 面相"
curl -s "$API_BASE/search-shushu?q=面相&limit=2" | jq -r '.total_matches // 0 | "找到 \(.) 条匹配记录"'

# 性能测试
echo ""
echo "⚡ 性能测试..."
echo "测试查询响应时间:"
time curl -s "$API_BASE/query-shushu?limit=1" > /dev/null

echo ""
echo "✅ API 测试完成！"
echo ""
echo "📖 可用端点:"
echo "- GET $API_BASE/ - 系统信息"
echo "- GET $API_BASE/test-connection - 测试连接"
echo "- GET $API_BASE/query-tables - 查询表结构"
echo "- GET $API_BASE/query-shushu?limit=N - 查询术数书"
echo "- GET $API_BASE/search-shushu?q=keyword&limit=N - 搜索术数书"
echo "- GET $API_BASE/shushu-stats - 统计信息"
echo ""
echo "🎯 与 AutoRAG 对比优势:"
echo "- ✅ 毫秒级响应 (Hyperdrive 边缘缓存)"
echo "- ✅ 精确查询 (SQL vs 向量相似性)"
echo "- ✅ 实时数据 (直连数据库)"
echo "- ✅ 成本优化 (连接池 + 缓存)"
echo "- ✅ 全球分布 (Cloudflare 边缘网络)"