63 lines
1.6 KiB
Bash
Executable File
63 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 测试 /api/setstatus POST 接口的shell脚本
|
|
|
|
BASE_URL="http://localhost:3000"
|
|
API_ENDPOINT="/api/setstatus"
|
|
|
|
echo "=== 测试 /api/setstatus POST 接口 ==="
|
|
echo
|
|
|
|
# 测试1: 正常情况 - s="ok", time=当前时间
|
|
echo "测试1: s='ok', time=当前时间"
|
|
CURRENT_TIME=$(date -u +"%Y-%m-%dT%H:%M:%S.%3NZ")
|
|
echo "请求参数: s='ok', time='$CURRENT_TIME'"
|
|
RESPONSE1=$(curl -s -X POST "$BASE_URL$API_ENDPOINT" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"s\": \"ok\", \"time\": \"$CURRENT_TIME\"}")
|
|
echo "响应: $RESPONSE1"
|
|
echo
|
|
|
|
# 测试2: 检查status.json是否更新成功
|
|
echo "检查status.json内容:"
|
|
if [ -f "src/db/status.json" ]; then
|
|
cat src/db/status.json
|
|
else
|
|
echo "status.json文件不存在"
|
|
fi
|
|
echo
|
|
|
|
# 测试3: 缺少s参数
|
|
echo "测试3: 缺少s参数"
|
|
RESPONSE3=$(curl -s -X POST "$BASE_URL$API_ENDPOINT" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"time\": \"$CURRENT_TIME\"}")
|
|
echo "响应: $RESPONSE3"
|
|
echo
|
|
|
|
# 测试4: 缺少time参数
|
|
echo "测试4: 缺少time参数"
|
|
RESPONSE4=$(curl -s -X POST "$BASE_URL$API_ENDPOINT" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"s\": \"ok\"}")
|
|
echo "响应: $RESPONSE4"
|
|
echo
|
|
|
|
# 测试5: s不等于ok
|
|
echo "测试5: s不等于ok"
|
|
TEST_TIME=$(date -u +"%Y-%m-%dT%H:%M:%S.%3NZ")
|
|
RESPONSE5=$(curl -s -X POST "$BASE_URL$API_ENDPOINT" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"s\": \"error\", \"time\": \"$TEST_TIME\"}")
|
|
echo "响应: $RESPONSE5"
|
|
echo
|
|
|
|
# 测试6: 空参数
|
|
echo "测试6: 空参数"
|
|
RESPONSE6=$(curl -s -X POST "$BASE_URL$API_ENDPOINT" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{}")
|
|
echo "响应: $RESPONSE6"
|
|
echo
|
|
|
|
echo "=== 测试完成 ===" |