Merge pull request #140 from CompOmics/fix/various-io-fixes #463
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: Test | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| linting-and-coverage: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.10" | |
| - name: Lint with Ruff | |
| uses: astral-sh/ruff-action@v3 | |
| with: | |
| args: check --exclude docs,tests | |
| - name: Check formatting with Ruff | |
| uses: astral-sh/ruff-action@v3 | |
| with: | |
| args: format --check --diff --exclude docs,tests | |
| - name: Install package and its dependencies | |
| run: pip install --editable .[dev,io] | |
| - name: Static type checking with mypy | |
| run: mypy --non-interactive | |
| - name: Test with pytest and codecov | |
| run: | | |
| pytest --cov=psm_utils --cov-report=xml tests/ | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v3 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| file: ./coverage.xml | |
| flags: unittests | |
| name: codecov-umbrella | |
| fail_ci_if_error: false | |
| test-platforms: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install package and its dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install .[dev] | |
| - name: Install optional dependencies that might not be available | |
| continue-on-error: true | |
| run: pip install .[io] | |
| - name: Test imports | |
| run: python -c "import psm_utils" | |
| - name: Test with pytest | |
| run: | | |
| pytest |