add quick_test.sh — smoke test for SQS service

This commit is contained in:
2026-04-09 08:48:58 +03:00
parent 8b6650ceab
commit ee28ef5ad0
+64
View File
@@ -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