Files
photo-live/.pc-upload-test.sh
浅念 07761b1b26 fix(app): camera preview distortion — swap sensor W/H for portrait
previewSize 报横向(W>H),竖屏直用会把画面拉扁。交换宽高转纵向比例再
FittedBox cover 铺满(裁切不变形)。397/397 全绿。

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-24 16:07:44 +08:00

43 lines
2.3 KiB
Bash

#!/usr/bin/env bash
# 一次性:PC 适配验证测试相册(真实链路上传 6 张不同宽高比测试图)
set -eu
CN=https://live-album.inside.hnxinyouhe.com
OV=https://live-album.outside.hnxinyouhe.com
IMGDIR="C:/Users/30997/AppData/Local/Temp/pc-test"
PW=$(cat /d/project/photo/.env.prod-secrets/ADMIN_PASSWORD | tr -d '\n\r')
extract() { printf '%s' "$1" | sed -n "s/.*\"$2\":\"\([^\"]*\)\".*/\1/p" | head -1; }
BODY=$(curl -sS $CN/v1/auth/password -H 'content-type: application/json' -d "{\"account\":\"admin\",\"password\":\"$PW\"}")
TOKEN=$(extract "$BODY" sessionToken); [ -n "$TOKEN" ] || { echo "login FAIL: $BODY"; exit 1; }
echo "login ok"
BODY=$(curl -sS $CN/v1/albums -H "authorization: Bearer $TOKEN" -H 'content-type: application/json' \
-d '{"translations":[{"locale":"zh-CN","title":"PC适配验证(测试相册可隐藏)","description":"桌面端样式优化验证用,6 张不同宽高比测试图"}],"defaultLocale":"zh-CN","startAt":"2026-09-24T00:00:00.000Z"}')
ALBUM_ID=$(extract "$BODY" id); PUB=$(extract "$BODY" publicToken)
[ -n "$ALBUM_ID" ] || { echo "album FAIL: $BODY"; exit 1; }
echo "album: $ALBUM_ID publicToken: $PUB"
i=0
for f in "$IMGDIR"/img*.jpg; do
i=$((i+1))
BYTES=$(stat -c %s "$f")
BODY=$(curl -sS $CN/v1/uploads -H "authorization: Bearer $TOKEN" -H 'content-type: application/json' \
-d "{\"albumId\":\"$ALBUM_ID\",\"clientTaskId\":\"pc-test-$i\",\"filename\":\"pc-$i.jpg\",\"bytes\":$BYTES,\"contentType\":\"image/jpeg\"}")
UP=$(extract "$BODY" uploadId); URL=$(extract "$BODY" url)
[ -n "$UP" ] || { echo "init$i FAIL: $BODY"; exit 1; }
CODE=$(curl -sS -X PUT "$URL" -H 'Content-Type: image/jpeg' --data-binary @"$f" -o /dev/null -w '%{http_code}')
[ "${CODE:0:1}" = 2 ] || { echo "PUT$i FAIL: $CODE"; exit 1; }
CODE=$(curl -sS -X POST $CN/v1/uploads/$UP/complete -H "authorization: Bearer $TOKEN" -o /dev/null -w '%{http_code}')
[ "${CODE:0:1}" = 2 ] || { echo "complete$i FAIL: $CODE"; exit 1; }
echo "img$i uploaded ($BYTES B)"
done
echo "waiting for ov visibility..."
for t in $(seq 1 30); do
N=$(curl -sS "$OV/v1/public/albums/$PUB/photos" | grep -c photoId || true)
[ "$N" -ge 6 ] && { echo "ov visible: $N photos (${t}x2s)"; break; }
sleep 2
done
echo "VIEWER_URL=https://live-album.outside.hnxinyouhe.com/a/$PUB"