#!/bin/bash # 集成测试脚本 set -e echo "=== kb-cli 集成测试 ===" echo # 清理旧数据 echo "1. 清理测试环境..." rm -f /tmp/test-kb.db export KB_VAULT="/tmp/test-vault" rm -rf "$KB_VAULT" mkdir -p "$KB_VAULT" # 创建测试知识库 echo "2. 创建测试知识库..." cat > "$KB_VAULT/001-测试文档.md" << 'EOF' --- tags: [充装, 规格] entities: [智能枪, 电子秤] --- # 充装规格配置 本配置适用于 [[002-常见问题]] 中提到的场景。 ## 充装参数 - YSP-12: 净重 5kg - YSP-35: 净重 15kg EOF cat > "$KB_VAULT/002-常见问题.md" << 'EOF' --- tags: [故障, 诊断] entities: [充装枪] --- # 常见问题 ## 充装失败 可能原因: 1. 智能枪未校准 2. 电子秤异常 EOF # 构建索引 echo "3. 构建索引..." go run -tags fts5 main.go index build --vault "$KB_VAULT" --db /tmp/test-kb.db # 测试搜索 echo echo "4. 测试搜索功能..." echo " 搜索关键词:充装" go run -tags fts5 main.go search 充装 --vault "$KB_VAULT" --db /tmp/test-kb.db --top 5 echo echo " 搜索关键词:智能枪" go run -tags fts5 main.go search 智能枪 --vault "$KB_VAULT" --db /tmp/test-kb.db --top 5 echo echo " JSON 格式输出:" go run -tags fts5 main.go search 规格 --vault "$KB_VAULT" --db /tmp/test-kb.db --json # 查看索引状态 echo echo "5. 查看索引状态..." go run -tags fts5 main.go index status --vault "$KB_VAULT" --db /tmp/test-kb.db echo echo "=== 集成测试完成 ==="