update at 2025-10-15 15:41:17
This commit is contained in:
64
test-json-generation.sh
Executable file
64
test-json-generation.sh
Executable file
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 测试 JSON 生成逻辑
|
||||
|
||||
echo "🧪 测试 Release JSON 生成"
|
||||
echo "================================"
|
||||
|
||||
# 模拟提取的内容
|
||||
VERSION="v1.0.3"
|
||||
RELEASE_TITLE="重大功能:停止生成 & UI 优化"
|
||||
TAG_MESSAGE="发布时间: 2025-10-15
|
||||
|
||||
### 🎯 重大功能:停止生成 & UI 优化
|
||||
|
||||
本版本实现了完整的停止生成功能。
|
||||
|
||||
#### ✨ 核心功能
|
||||
|
||||
**⏸️ 智能停止生成**
|
||||
- 点击停止按钮立即中断 AI 回复
|
||||
- 保留已生成的内容"
|
||||
|
||||
echo "📝 版本号: $VERSION"
|
||||
echo "📌 标题: $RELEASE_TITLE"
|
||||
echo ""
|
||||
|
||||
# 方法1:使用 jq -R -s(会导致 \n 转义)
|
||||
echo "❌ 方法1 (有问题的):"
|
||||
JSON_BAD=$(echo "$TAG_MESSAGE" | jq -R -s -c \
|
||||
--arg version "$VERSION" \
|
||||
--arg title "$VERSION - $RELEASE_TITLE" \
|
||||
'{
|
||||
tag_name: $version,
|
||||
name: $title,
|
||||
body: .,
|
||||
draft: false,
|
||||
prerelease: false
|
||||
}')
|
||||
echo "$JSON_BAD" | jq -r '.body' | head -n 5
|
||||
echo ""
|
||||
|
||||
# 方法2:使用 --arg(正确的)
|
||||
echo "✅ 方法2 (正确的):"
|
||||
JSON_GOOD=$(jq -n -c \
|
||||
--arg version "$VERSION" \
|
||||
--arg title "$VERSION - $RELEASE_TITLE" \
|
||||
--arg body "$TAG_MESSAGE" \
|
||||
'{
|
||||
tag_name: $version,
|
||||
name: $title,
|
||||
body: $body,
|
||||
draft: false,
|
||||
prerelease: false
|
||||
}')
|
||||
echo "$JSON_GOOD" | jq -r '.body' | head -n 5
|
||||
echo ""
|
||||
|
||||
echo "🔍 比较:"
|
||||
echo "方法1 body 长度: $(echo "$JSON_BAD" | jq -r '.body' | wc -c)"
|
||||
echo "方法2 body 长度: $(echo "$JSON_GOOD" | jq -r '.body' | wc -c)"
|
||||
echo ""
|
||||
|
||||
echo "📋 完整的 JSON (方法2):"
|
||||
echo "$JSON_GOOD" | jq '.'
|
||||
Reference in New Issue
Block a user