docs: Update test coverage documentation to 80% and 160+ tests #45
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI - Tests & Linting | |
| on: | |
| push: | |
| branches: [main, master] | |
| pull_request: | |
| branches: [main, master] | |
| jobs: | |
| lint-and-test: | |
| runs-on: ubuntu-latest | |
| env: | |
| BOT_TOKEN: test-token | |
| MINDEE_API_KEY: test-key | |
| MINDEE_MODEL_ID: test-model | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.11" | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| python -m pip install -e .[dev] | |
| - name: Run DB migrations | |
| run: python -m alembic upgrade head | |
| - name: Pre-commit (ruff, format, mypy) | |
| run: pre-commit run --all-files | |
| - name: Run mypy | |
| run: | | |
| python -m mypy domain services ocr storage handlers | |
| - name: Run unit tests (no storage DB) | |
| run: pytest --import-mode=importlib -m "not storage_db" | |
| - name: Run storage DB integration tests | |
| run: pytest --import-mode=importlib -m "storage_db" --no-cov |