diff --git a/quick_test.sh b/quick_test.sh new file mode 100644 index 0000000..d128935 --- /dev/null +++ b/quick_test.sh @@ -0,0 +1,64 @@ +#!/bin/bash +# quick_test.sh — Быстрая проверка SQS-сервиса +# Проверяет: создание очереди, отправку, получение, удаление +# Требования: curl +# Запуск: bash quick_test.sh + +set -euo pipefail + +SQS_ENDPOINT="https://sqs.kube5s.ru/sqs/test001" +ACCESS_KEY="SQSAK-test001-ae4dc8" +SECRET_KEY="J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE" +AUTH="${ACCESS_KEY}:${SECRET_KEY}" +VERSION="2012-11-05" + +PASS=0 +FAIL=0 +QUEUE="quicktest-$$" + +call() { + curl -sf --max-time 15 -u "$AUTH" "${SQS_ENDPOINT}?${1}&Version=${VERSION}" 2>/dev/null +} + +check() { + if echo "$2" | grep -q "$3"; then + PASS=$((PASS + 1)); echo " ✅ $1" + else + FAIL=$((FAIL + 1)); echo " ❌ $1" + fi +} + +echo "=== SQS Quick Test ===" +echo "" + +# 1. Создать очередь +R=$(call "Action=CreateQueue&QueueName=${QUEUE}") +check "Создание очереди" "$R" "CreateQueueResult" + +# 2. Список очередей +R=$(call "Action=ListQueues") +check "Очередь в списке" "$R" "${QUEUE}" + +# 3. Отправить сообщение +R=$(call "Action=SendMessage&QueueUrl=${SQS_ENDPOINT}/test001/${QUEUE}&MessageBody=HelloSQS") +check "Отправка сообщения" "$R" "MessageId" + +# 4. Получить сообщение +R=$(call "Action=ReceiveMessage&QueueUrl=${SQS_ENDPOINT}/test001/${QUEUE}") +check "Получение сообщения" "$R" "HelloSQS" + +# 5. Удалить очередь +R=$(call "Action=DeleteQueue&QueueUrl=${SQS_ENDPOINT}/test001/${QUEUE}") +check "Удаление очереди" "$R" "DeleteQueueResponse" + +# 6. Очередь исчезла +R=$(call "Action=ListQueues") +if echo "$R" | grep -q "${QUEUE}"; then + FAIL=$((FAIL + 1)); echo " ❌ Очередь удалена из списка" +else + PASS=$((PASS + 1)); echo " ✅ Очередь удалена из списка" +fi + +echo "" +echo "Результат: ${PASS} OK / ${FAIL} FAIL" +[ "$FAIL" -eq 0 ] && echo "Всё работает!" || exit 1