| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.10" | |
| cache: pip | |
| - name: Install test dependencies | |
| # The unit tests cover pure logic (helpers, memory, ROUGE/text metrics) | |
| # and avoid model downloads, so a lightweight install keeps CI fast. | |
| run: pip install pytest ruff numpy rouge-score | |
| - name: Lint (ruff) | |
| run: ruff check src/ app.py tests/ | |
| - name: Run unit tests | |
| run: pytest | |