diff options
| author | nsfisis <nsfisis@gmail.com> | 2025-11-24 04:58:38 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2025-11-24 04:58:38 +0900 |
| commit | 67094790d2d9db5c99e7c136f49061a78698e57d (patch) | |
| tree | 02feb966e74c7c2d1b6a77d8310502aa9758649b /vhosts/t/phpcon-kagawa-2025/tests/test_post.sh | |
| parent | a071111365f9760b2f97fa3f6e12aee9f75dd15d (diff) | |
| download | nil.ninja-67094790d2d9db5c99e7c136f49061a78698e57d.tar.gz nil.ninja-67094790d2d9db5c99e7c136f49061a78698e57d.tar.zst nil.ninja-67094790d2d9db5c99e7c136f49061a78698e57d.zip | |
Add vhosts/t/phpcon-kagawa-2025/
Diffstat (limited to 'vhosts/t/phpcon-kagawa-2025/tests/test_post.sh')
| -rwxr-xr-x | vhosts/t/phpcon-kagawa-2025/tests/test_post.sh | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/vhosts/t/phpcon-kagawa-2025/tests/test_post.sh b/vhosts/t/phpcon-kagawa-2025/tests/test_post.sh new file mode 100755 index 0000000..950c4ff --- /dev/null +++ b/vhosts/t/phpcon-kagawa-2025/tests/test_post.sh @@ -0,0 +1,75 @@ +#!/bin/bash +# Test for /post endpoint + +BASE_URL="${BASE_URL:-http://127.0.0.1:8080}" +PASSED=0 +FAILED=0 + +echo "Testing /post endpoint" +echo "======================" + +# Test 1: GET /post returns 200 +echo -n "Test 1: GET /post returns 200... " +response=$(curl -s -o /dev/null -w "%{http_code}" "$BASE_URL/post") +if [ "$response" = "200" ]; then + echo "PASSED" + ((PASSED++)) +else + echo "FAILED (got $response)" + ((FAILED++)) +fi + +# Test 2: GET /post returns quiz form +echo -n "Test 2: GET /post returns quiz form... " +content=$(curl -s "$BASE_URL/post") +if echo "$content" | grep -q "本州四国連絡橋クイズ"; then + echo "PASSED" + ((PASSED++)) +else + echo "FAILED" + ((FAILED++)) +fi + +# Test 3: POST /post with correct answers returns all correct +echo -n "Test 3: POST /post with correct answers... " +response=$(curl -s -X POST "$BASE_URL/post" \ + -d "ehime=hiroshima&kagawa=okayama&tokushima=hyogo") +if echo "$response" | grep -q "スコア: 3 / 3"; then + echo "PASSED" + ((PASSED++)) +else + echo "FAILED" + ((FAILED++)) +fi + +# Test 4: POST /post with wrong answers returns score 0 +echo -n "Test 4: POST /post with wrong answers... " +response=$(curl -s -X POST "$BASE_URL/post" \ + -d "ehime=osaka&kagawa=osaka&tokushima=osaka") +if echo "$response" | grep -q "スコア: 0 / 3"; then + echo "PASSED" + ((PASSED++)) +else + echo "FAILED" + ((FAILED++)) +fi + +# Test 5: POST /post with partial correct answers +echo -n "Test 5: POST /post with partial correct answers... " +response=$(curl -s -X POST "$BASE_URL/post" \ + -d "ehime=hiroshima&kagawa=osaka&tokushima=osaka") +if echo "$response" | grep -q "スコア: 1 / 3"; then + echo "PASSED" + ((PASSED++)) +else + echo "FAILED" + ((FAILED++)) +fi + +echo "" +echo "Results: $PASSED passed, $FAILED failed" + +if [ $FAILED -gt 0 ]; then + exit 1 +fi +exit 0 |
