name: Python Test on: push: branches: [ master, development ] paths-ignore: - "**.md" - ".markdown_style.rb" - ".mdlrc" - "scripts/" pull_request: branches: [ master, development ] paths-ignore: - "**.md" - ".markdown_style.rb" - ".mdlrc" - "scripts/" jobs: test: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, macos-latest] python-version: [3.9] ext: [.sh] include: - os: windows-latest python-version: 3.9 ext: .ps1 steps: - uses: actions/checkout@v3 - name: Setup Python uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pytest pytest-cov ruff pip install . - name: Make configuration for tests env: REDDIT_TOKEN: ${{ secrets.REDDIT_TEST_TOKEN }} run: | ./devscripts/configure${{ matrix.ext }} - name: Critical ruff lint run: | ruff check --select=E9,F63,F7,F82 . - name: Test with pytest run: | pytest -m "not slow" --verbose --cov=./bdfr/ --cov-report term:skip-covered --cov-report html - name: Upload coverage report uses: actions/upload-artifact@v3 with: name: coverage_report path: htmlcov/ - name: Full ruff lint run: | ruff check . --exit-zero