Skip to content

test: добавлены тесты для respond_toi_join_request.py #93

test: добавлены тесты для respond_toi_join_request.py

test: добавлены тесты для respond_toi_join_request.py #93

Workflow file for this run

name: CI
on:
push:
branches:
- master
- 'dev/*'
- 'fix/*'
pull_request:
branches:
- master
- 'dev/*'
- 'fix/*'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install uv
run: |
curl -LsSf https://astral.sh/uv/install.sh | sh
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: Install project with uv
run: |
uv pip install -r requirements-dev.txt --system
- name: Ruff - check style
run: ruff check .
test:
needs: lint
runs-on: ubuntu-latest
timeout-minutes: 4
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Ensure docker & compose available
run: |
docker --version
if ! docker compose version >/dev/null 2>&1; then
sudo apt-get update
sudo apt-get install -y docker-compose-plugin
fi
docker compose version
- name: Start services and run tests
env:
PROJECT_NAME: "taskflow_test"
COMPOSE_FILE: "docker-compose.test.yml"
ENV_FILE: ".env.test"
TEST_CONTAINER: "taskflow_web_test"
run: |
set -euo pipefail
docker compose -p "$PROJECT_NAME" -f "$COMPOSE_FILE" --env-file "$ENV_FILE" up -d
echo "Waiting for $TEST_CONTAINER to finish..."
EXIT_CODE=$(docker wait "$TEST_CONTAINER")
echo "Test container exit code: $EXIT_CODE"
echo "==== docker compose logs ===="
docker compose -p "$PROJECT_NAME" -f "$COMPOSE_FILE" --env-file "$ENV_FILE" logs
echo "==== docker logs (container) ===="
docker logs --timestamps "$TEST_CONTAINER" || true
docker compose -p "$PROJECT_NAME" -f "$COMPOSE_FILE" --env-file "$ENV_FILE" down --volumes --remove-orphans
if [ "$EXIT_CODE" -eq 0 ]; then
echo "Tests passed!"
exit 0
else
echo "Tests failed!"
exit 1
fi