fix(auth): make tenant.adminEmail nullable for phone-only registrations; fix api-test status parsing
This commit is contained in:
parent
938802da96
commit
09d9200235
|
|
@ -17,8 +17,8 @@ export class Tenant {
|
|||
@Column({ type: 'varchar', length: 20, default: 'active' })
|
||||
status!: 'active' | 'suspended';
|
||||
|
||||
@Column({ type: 'varchar', length: 255 })
|
||||
adminEmail!: string;
|
||||
@Column({ type: 'varchar', length: 255, nullable: true })
|
||||
adminEmail?: string;
|
||||
|
||||
@Column({ type: 'int', default: 10 })
|
||||
maxServers!: number;
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ section "2. Auth — Register (Email)"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/register" \
|
||||
-d "{\"email\":\"${TEST_EMAIL}\",\"password\":\"${TEST_PASS}\",\"name\":\"Test User\",\"companyName\":\"${TEST_COMPANY}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
BODY=$(echo "$RESP" | sed 's/__STATUS__[0-9]*//')
|
||||
|
||||
if [[ "$STATUS" == "201" || "$STATUS" == "200" ]]; then
|
||||
|
|
@ -73,7 +73,7 @@ section "3. Auth — Register (Phone)"
|
|||
PHONE_COMPANY="PhoneCo${TS}"
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/register" \
|
||||
-d "{\"phone\":\"${TEST_PHONE}\",\"password\":\"${TEST_PASS}\",\"name\":\"Phone User\",\"companyName\":\"${PHONE_COMPANY}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
BODY=$(echo "$RESP" | sed 's/__STATUS__[0-9]*//')
|
||||
|
||||
if [[ "$STATUS" == "201" || "$STATUS" == "200" ]]; then
|
||||
|
|
@ -87,7 +87,7 @@ section "4. Auth — Duplicate registration should fail"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/register" \
|
||||
-d "{\"email\":\"${TEST_EMAIL}\",\"password\":\"${TEST_PASS}\",\"name\":\"Dup\",\"companyName\":\"Dup${TS}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "409" ]] && ok "Duplicate email → 409 Conflict" || fail "Duplicate email → expected 409, got ${STATUS}"
|
||||
|
||||
# ══════════════════════════════════════════════════════════════════════════════
|
||||
|
|
@ -95,7 +95,7 @@ section "5. Auth — Login (email)"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/login" \
|
||||
-d "{\"email\":\"${TEST_EMAIL}\",\"password\":\"${TEST_PASS}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
BODY=$(echo "$RESP" | sed 's/__STATUS__[0-9]*//')
|
||||
|
||||
if [[ "$STATUS" == "200" || "$STATUS" == "201" ]]; then
|
||||
|
|
@ -111,7 +111,7 @@ section "6. Auth — Login (phone)"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/login" \
|
||||
-d "{\"phone\":\"${TEST_PHONE}\",\"password\":\"${TEST_PASS}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "200" || "$STATUS" == "201" ]] && ok "POST /api/v1/auth/login (phone) → ${STATUS}" \
|
||||
|| fail "POST /api/v1/auth/login (phone) → ${STATUS}"
|
||||
|
||||
|
|
@ -120,7 +120,7 @@ section "7. Auth — Login (identifier field)"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/login" \
|
||||
-d "{\"identifier\":\"${TEST_EMAIL}\",\"password\":\"${TEST_PASS}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "200" || "$STATUS" == "201" ]] && ok "POST /api/v1/auth/login (identifier) → ${STATUS}" \
|
||||
|| fail "POST /api/v1/auth/login (identifier) → ${STATUS}"
|
||||
|
||||
|
|
@ -129,7 +129,7 @@ section "8. Auth — Wrong password should be 401"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/login" \
|
||||
-d "{\"email\":\"${TEST_EMAIL}\",\"password\":\"wrongpass\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "401" ]] && ok "Wrong password → 401" || fail "Wrong password → expected 401, got ${STATUS}"
|
||||
|
||||
# ══════════════════════════════════════════════════════════════════════════════
|
||||
|
|
@ -156,7 +156,7 @@ section "11. Auth — Refresh token"
|
|||
if [[ -n "$REFRESH_TOKEN" ]]; then
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/refresh" \
|
||||
-d "{\"refreshToken\":\"${REFRESH_TOKEN}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "200" || "$STATUS" == "201" ]] && ok "POST /api/v1/auth/refresh → ${STATUS}" \
|
||||
|| fail "POST /api/v1/auth/refresh → ${STATUS}"
|
||||
else
|
||||
|
|
@ -168,7 +168,7 @@ section "12. Auth — Platform admin login (ops@it0.com)"
|
|||
|
||||
RESP=$(post_json "${BASE}/api/v1/auth/login" \
|
||||
-d '{"email":"ops@it0.com","password":"it0ops2024"}')
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
BODY=$(echo "$RESP" | sed 's/__STATUS__[0-9]*//')
|
||||
|
||||
if [[ "$STATUS" == "200" || "$STATUS" == "201" ]]; then
|
||||
|
|
@ -288,7 +288,7 @@ if [[ -n "$TOKEN" ]]; then
|
|||
RESP=$(post_json "${BASE}/api/v1/auth/api-keys" \
|
||||
-H "Authorization: Bearer ${TOKEN}" \
|
||||
-d "{\"name\":\"test-key-${TS}\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
[[ "$STATUS" == "200" || "$STATUS" == "201" ]] && ok "POST /api/v1/auth/api-keys → ${STATUS}" \
|
||||
|| fail "POST /api/v1/auth/api-keys → ${STATUS}"
|
||||
fi
|
||||
|
|
@ -301,7 +301,7 @@ if [[ -n "$TOKEN" ]]; then
|
|||
RESP=$(post_json "${BASE}/api/v1/tenants/invites" \
|
||||
-H "Authorization: Bearer ${TOKEN}" \
|
||||
-d "{\"email\":\"${INVITE_EMAIL}\",\"role\":\"viewer\"}")
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | cut -d_ -f3)
|
||||
STATUS=$(echo "$RESP" | grep -o '__STATUS__[0-9]*' | sed 's/__STATUS__//')
|
||||
BODY=$(echo "$RESP" | sed 's/__STATUS__[0-9]*//')
|
||||
if [[ "$STATUS" == "200" || "$STATUS" == "201" ]]; then
|
||||
ok "POST /api/v1/tenants/invites → ${STATUS}"
|
||||
|
|
|
|||
Loading…
Reference in New Issue