AndreiDrang/python3-capsolver

View on GitHub
.github/workflows/test.yml

Summary

Maintainability
Test Coverage
name: Tests

on:
  push:
    branches: [ "main", "release"]
    paths:
      - '.github/workflows/test.yml'
      - 'src/**'
      - 'tests/**'
      - 'Makefile'
      - 'requirements.test.txt'
  pull_request:
    branches: [ "main", "release"]
    paths:
      - '.github/workflows/test.yml'
      - 'src/**'
      - 'Makefile'
      - 'requirements.test.txt'
  schedule:
    - cron: "5 0 * * 1"

jobs:
  test:
    runs-on: ubuntu-latest
    env:
      API_KEY: ${{ secrets.API_KEY }}
    strategy:
      fail-fast: false
      matrix:
        python-version: ["3.11", ]

    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 dependencies
        run: |
          pip install --upgrade pip build setuptools
          pip install -r requirements.test.txt
          pip install .

      - name: Test
        run: make tests

      - name: Upload coverage to Codecov
        uses: codecov/codecov-action@v4
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ${{github.workspace}}/src/coverage/coverage.xml
          fail_ci_if_error: true
          verbose: true