108 lines
2.8 KiB
Bash
Executable File
108 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 测试示例项目脚本
|
|
# 用于快速验证 dev_dependencies 功能是否正常工作
|
|
|
|
set -e
|
|
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "🧪 测试 Swagger Generator 示例项目"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo ""
|
|
|
|
# 检查当前目录
|
|
if [ ! -f "pubspec.yaml" ]; then
|
|
echo "❌ 错误:请在示例项目目录中运行此脚本"
|
|
echo " cd example/as_dev_dependency"
|
|
exit 1
|
|
fi
|
|
|
|
echo "📂 当前目录: $(pwd)"
|
|
echo ""
|
|
|
|
# 步骤 1: 清理
|
|
echo "🧹 步骤 1/5: 清理旧文件..."
|
|
rm -rf lib/generated .dart_tool build
|
|
echo "✅ 清理完成"
|
|
echo ""
|
|
|
|
# 步骤 2: 安装依赖
|
|
echo "📦 步骤 2/5: 安装依赖..."
|
|
flutter pub get
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ 依赖安装失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ 依赖安装成功"
|
|
echo ""
|
|
|
|
# 步骤 3: 生成 API 代码
|
|
echo "🚀 步骤 3/5: 生成 API 代码..."
|
|
dart run swagger_generator_flutter generate --all
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "❌ API 代码生成失败"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ API 代码生成成功"
|
|
echo ""
|
|
|
|
# 步骤 4: 检查生成的文件
|
|
echo "🔍 步骤 4/5: 检查生成的文件..."
|
|
|
|
if [ ! -d "lib/generated" ]; then
|
|
echo "❌ 生成目录不存在"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d "lib/generated/api" ]; then
|
|
echo "❌ API 目录不存在"
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d "lib/generated/api_models" ]; then
|
|
echo "❌ Models 目录不存在"
|
|
exit 1
|
|
fi
|
|
|
|
# 统计生成的文件
|
|
api_files=$(find lib/generated/api -name "*.dart" | wc -l | tr -d ' ')
|
|
model_files=$(find lib/generated/api_models -name "*.dart" | wc -l | tr -d ' ')
|
|
|
|
echo " 📄 生成的 API 文件: $api_files 个"
|
|
echo " 📄 生成的 Model 文件: $model_files 个"
|
|
echo "✅ 文件检查通过"
|
|
echo ""
|
|
|
|
# 步骤 5: 分析代码
|
|
echo "🔬 步骤 5/5: 分析生成的代码..."
|
|
dart analyze lib/generated 2>&1 | head -20
|
|
|
|
echo ""
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo "✨ 测试完成!"
|
|
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
echo ""
|
|
echo "📊 统计信息:"
|
|
echo " ✅ API 文件: $api_files 个"
|
|
echo " ✅ Model 文件: $model_files 个"
|
|
echo ""
|
|
echo "📁 生成的文件位置:"
|
|
echo " lib/generated/api/"
|
|
echo " lib/generated/api_models/"
|
|
echo ""
|
|
echo "🎯 下一步:"
|
|
echo " 1. 运行 build_runner:"
|
|
echo " dart run build_runner build --delete-conflicting-outputs"
|
|
echo ""
|
|
echo " 2. 运行应用:"
|
|
echo " flutter run"
|
|
echo ""
|
|
echo " 3. 查看生成的代码:"
|
|
echo " ls -la lib/generated/"
|
|
echo ""
|
|
|