96 lines
3.2 KiB
Bash
96 lines
3.2 KiB
Bash
#!/bin/bash
|
||
# Save as test_multiberry.sh
|
||
|
||
BASE_URL="http://localhost:3000/api"
|
||
|
||
echo "=========================================="
|
||
echo "1️⃣ REGISTER USER"
|
||
echo "=========================================="
|
||
REGISTER=$(curl -s -X POST $BASE_URL/auth/register \
|
||
-H 'Content-Type: application/json' \
|
||
-d '{"bank_user_number": 8, "password": "testpass123"}')
|
||
|
||
echo "$REGISTER" | jq .
|
||
TOKEN=$(echo "$REGISTER" | jq -r '.token')
|
||
BANK_USER_ID=$(echo "$REGISTER" | jq -r '.bank_user_id')
|
||
|
||
echo "✅ Token: ${TOKEN:0:50}..."
|
||
echo "✅ Bank User ID: $BANK_USER_ID"
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "2️⃣ LOGIN (verify token works)"
|
||
echo "=========================================="
|
||
LOGIN=$(curl -s -X POST $BASE_URL/auth/login \
|
||
-H 'Content-Type: application/json' \
|
||
-d "{\"bank_user_id\": \"$BANK_USER_ID\", \"password\": \"testpass123\"}")
|
||
|
||
echo "$LOGIN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "3️⃣ GET ME (verify auth middleware)"
|
||
echo "=========================================="
|
||
curl -s http://localhost:3000/api/auth/me \
|
||
-H "Authorization: Bearer $TOKEN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "4️⃣ REQUEST CONSENT from VBank"
|
||
echo "=========================================="
|
||
CONSENT=$(curl -s -X POST $BASE_URL/consent/vbank/$BANK_USER_ID \
|
||
-H "Authorization: Bearer $TOKEN")
|
||
|
||
echo "$CONSENT" | jq .
|
||
CONSENT_ID=$(echo "$CONSENT" | jq -r '.consent_id')
|
||
echo "✅ Consent ID: $CONSENT_ID"
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "5️⃣ GET ACCOUNTS (auto-saved to DB)"
|
||
echo "=========================================="
|
||
ACCOUNTS=$(curl -s $BASE_URL/accounts/vbank/$BANK_USER_ID \
|
||
-H "Authorization: Bearer $TOKEN")
|
||
|
||
echo "$ACCOUNTS" | jq .
|
||
ACCOUNT_ID=$(echo "$ACCOUNTS" | jq -r '.data.account[0].accountId')
|
||
echo "✅ Account ID: $ACCOUNT_ID"
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "6️⃣ GET BALANCES"
|
||
echo "=========================================="
|
||
curl -s $BASE_URL/balances/vbank/$BANK_USER_ID \
|
||
-H "Authorization: Bearer $TOKEN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "7️⃣ GET TRANSACTIONS (page 1, limit 6)"
|
||
echo "=========================================="
|
||
curl -s "$BASE_URL/transactions/vbank/$BANK_USER_ID/$ACCOUNT_ID?page=1&limit=6" \
|
||
-H "Authorization: Bearer $TOKEN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "8️⃣ GET TRANSACTIONS (page 2, limit 6)"
|
||
echo "=========================================="
|
||
curl -s "$BASE_URL/transactions/vbank/$BANK_USER_ID/$ACCOUNT_ID?page=2&limit=6" \
|
||
-H "Authorization: Bearer $TOKEN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "9️⃣ DELETE CONSENT"
|
||
echo "=========================================="
|
||
curl -s -X DELETE $BASE_URL/consent/vbank/$BANK_USER_ID \
|
||
-H "Authorization: Bearer $TOKEN" | jq .
|
||
echo ""
|
||
|
||
echo "=========================================="
|
||
echo "🔟 VERIFY DB (from another terminal)"
|
||
echo "=========================================="
|
||
echo "just psql-exec"
|
||
echo "SELECT * FROM users;"
|
||
echo "SELECT * FROM user_consents;"
|
||
echo "SELECT * FROM accounts;"
|
||
echo "SELECT * FROM transactions;"
|
||
|