88 lines
2.3 KiB
Bash
Executable File
88 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Get group members
|
|
source "$(dirname "$0")/config.sh"
|
|
|
|
TOKEN1=$(load_state "TOKEN1")
|
|
TOKEN2=$(load_state "TOKEN2")
|
|
GROUP_ID=$(load_state "GROUP_ID")
|
|
|
|
if [[ -z "$TOKEN1" || -z "$TOKEN2" || -z "$GROUP_ID" ]]; then
|
|
echo "ERROR: Missing state. Run previous scripts first."
|
|
echo " TOKEN1=$TOKEN1"
|
|
echo " TOKEN2=$TOKEN2"
|
|
echo " GROUP_ID=$GROUP_ID"
|
|
exit 1
|
|
fi
|
|
|
|
echo "=== Getting members of group $GROUP_ID as user1 (owner) ==="
|
|
RESP=$(curl -s -w "\n%{http_code}" -X POST "$BASE_URL/get/group/members" \
|
|
-d "token=$TOKEN1" \
|
|
-d "group=$GROUP_ID")
|
|
BODY=$(echo "$RESP" | head -1)
|
|
CODE=$(echo "$RESP" | tail -1)
|
|
echo "Response: $BODY (HTTP $CODE)"
|
|
|
|
if [[ "$CODE" != "202" ]]; then
|
|
echo "FAIL: Expected HTTP 202, got $CODE"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "=== Getting members of group $GROUP_ID as user2 (member) ==="
|
|
RESP=$(curl -s -w "\n%{http_code}" -X POST "$BASE_URL/get/group/members" \
|
|
-d "token=$TOKEN2" \
|
|
-d "group=$GROUP_ID")
|
|
BODY=$(echo "$RESP" | head -1)
|
|
CODE=$(echo "$RESP" | tail -1)
|
|
echo "Response: $BODY (HTTP $CODE)"
|
|
|
|
if [[ "$CODE" != "202" ]]; then
|
|
echo "FAIL: Expected HTTP 202, got $CODE"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "=== Getting members with invalid token ==="
|
|
RESP=$(curl -s -w "\n%{http_code}" -X POST "$BASE_URL/get/group/members" \
|
|
-d "token=invalid_token" \
|
|
-d "group=$GROUP_ID")
|
|
BODY=$(echo "$RESP" | head -1)
|
|
CODE=$(echo "$RESP" | tail -1)
|
|
echo "Response: $BODY (HTTP $CODE)"
|
|
|
|
if [[ "$CODE" != "401" ]]; then
|
|
echo "FAIL: Expected HTTP 401, got $CODE"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "=== Getting members with invalid group ID ==="
|
|
RESP=$(curl -s -w "\n%{http_code}" -X POST "$BASE_URL/get/group/members" \
|
|
-d "token=$TOKEN1" \
|
|
-d "group=abc")
|
|
BODY=$(echo "$RESP" | head -1)
|
|
CODE=$(echo "$RESP" | tail -1)
|
|
echo "Response: $BODY (HTTP $CODE)"
|
|
|
|
if [[ "$CODE" != "400" ]]; then
|
|
echo "FAIL: Expected HTTP 400, got $CODE"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "=== Getting members of non-existent group ==="
|
|
RESP=$(curl -s -w "\n%{http_code}" -X POST "$BASE_URL/get/group/members" \
|
|
-d "token=$TOKEN1" \
|
|
-d "group=999999")
|
|
BODY=$(echo "$RESP" | head -1)
|
|
CODE=$(echo "$RESP" | tail -1)
|
|
echo "Response: $BODY (HTTP $CODE)"
|
|
|
|
if [[ "$CODE" != "401" ]]; then
|
|
echo "FAIL: Expected HTTP 401, got $CODE"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "ALL PASSED"
|