Files
calminer/.gitea/workflows/test.yml
zwitschi 3da8a50ac4
Some checks failed
Run E2E Tests / E2E Tests (push) Failing after 5m12s
Run Tests / Lint (push) Successful in 37s
Run Tests / Unit Tests (push) Successful in 44s
feat: Add E2E testing workflow with Playwright and PostgreSQL service
2025-10-28 08:19:07 +01:00

73 lines
1.8 KiB
YAML

name: Run Tests
on: [push]
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Export PYTHONPATH
shell: bash
run: |
set -euo pipefail
echo "PYTHONPATH=${{ github.workspace }}" >> "$GITHUB_ENV"
- name: Prepare Python environment
uses: ./.gitea/actions/setup-python-env
with:
use-system-python: 'true'
run-db-setup: 'false'
create-venv: 'true'
- name: Run lint checks
run: ruff check .
unit:
name: Unit Tests
runs-on: ubuntu-latest
env:
DATABASE_DRIVER: postgresql
DATABASE_HOST: postgres
DATABASE_PORT: '5432'
DATABASE_NAME: calminer_ci
DATABASE_USER: calminer
DATABASE_PASSWORD: secret
DATABASE_SCHEMA: public
DATABASE_SUPERUSER: calminer
DATABASE_SUPERUSER_PASSWORD: secret
DATABASE_SUPERUSER_DB: calminer_ci
DATABASE_URL: postgresql+psycopg2://calminer:secret@postgres:5432/calminer_ci
services:
postgres:
image: postgres:16
env:
POSTGRES_DB: calminer_ci
POSTGRES_USER: calminer
POSTGRES_PASSWORD: secret
options: >-
--health-cmd "pg_isready -U calminer -d calminer_ci"
--health-interval 10s
--health-timeout 5s
--health-retries 10
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Export PYTHONPATH
shell: bash
run: |
set -euo pipefail
echo "PYTHONPATH=${{ github.workspace }}" >> "$GITHUB_ENV"
- name: Prepare Python environment
uses: ./.gitea/actions/setup-python-env
with:
use-system-python: 'true'
create-venv: 'true'
- name: Run unit tests
run: pytest tests/unit