Рефакторинг обработчиков. Финальное тестирование #21

This commit is contained in:
2026-05-18 14:37:59 +03:00
parent 40806df62a
commit 3abf5c94ee
21 changed files with 630 additions and 89 deletions

View File

@@ -34,7 +34,7 @@ clean: ## Очистить проект
@echo "Очистка проекта..."
@$(REBAR3) clean
#@rm -rf _build build/ct_run.* deps logs *.log
@rm -rf _build logs/ct_run.* deps doc *.log
@rm -rf _build logs/ct_run.* deps doc app *.log
@echo "✓ Очистка завершена"
deps: ## Установить зависимости
@@ -125,10 +125,6 @@ test-api-docker:
-e "ADMIN_WS_HOST=ws://eventhub:8446" \
eventhub-tests
test-scripts: ## Запустить тесты с фильтром (make test-runner PATTERN=booking)
@chmod +x test/scripts/*.sh
@cd test/scripts && ./run_tests.sh $(PATTERN)
test-all: eunit test-api ## Запустить ВСЕ тесты (EUnit + API)
@echo "========================================"
@echo " ВСЕ ТЕСТЫ ПРОЙДЕНЫ!"
@@ -143,6 +139,13 @@ tsung-test: ## Запустить нагрузочный тест Tsung
@tsung -f test/tsung/eventhub_http.xml -l logs/tsung start
@echo "Отчёт: logs/tsung/*/report.html"
tsung-emulate: ## Запустить нагрузочный тест Tsung
@rm -rf logs/tsung
@echo "Запуск нагрузочного теста Tsung..."
@mkdir -p logs/tsung
@tsung -f test/tsung/eventhub_tsung.xml -l logs/tsung start
@echo "Отчёт: http://localhost:8091/ или logs/tsung/*/report.html" # <tsung loglevel="debug" dumptraffic="true" version="1.0">
wrk-register: ## Нагрузочный тест регистрации (wrk2)
@wrk -t4 -c100 -d30s -t100 -s test/wrk/scripts/wrk_register.lua https://api.eventhub.local/api/v1/register
@@ -155,6 +158,19 @@ wrk-search: ## Нагрузочный тест поиска (wrk2)
-H "Authorization: Bearer $$TOKEN" \
https://api.eventhub.local/api/v1/search?type=event\&q=test
eventhub-emulator:
@docker run --rm --network host \
-e ADMIN_API_HOST="http://localhost:8445" \
-e CLIENT_API_HOST="http://localhost:8080" \
-e ADMIN_EMAIL="superadmin@eventhub.local" \
-e ADMIN_PASSWORD="123456" \
-e BOT_PASSWORD="botpass123" \
-e MIN_DELAY=0.5 \
-e MAX_DELAY=3.0 \
-e LOOP_FOREVER=true \
-e BOT_REFRESH_INTERVAL=300 \
eventhub-emulator
curl-health:
for i in {1..2}; do curl -k -s -o /dev/null -w "%{http_code}\n" -H "Host: api.eventhub.local" https://localhost/api/health; done
@@ -276,7 +292,7 @@ docker-swarm-deploy: ## Запустить кластер
docker-swarm-stop: ## Запустить кластер
@docker stack rm eventhub
@docker volume prune -f
##@docker volume prune -f
@echo "✅ Кластер удален"
docker-swarm-scale: ## Изменить количество реплик (например, make scale REPLICAS=5)