diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 299671e0..af06e071 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -1,28 +1,42 @@ -name: Tests | cpython 3.10 - 3.13 +name: 🧪 Tests (CPython 3.10 – 3.13) -on: push +on: + push: # run on every push to any branch + +defaults: + run: + shell: bash # makes multi-line run steps a little tidier + +concurrency: # cancel superseded runs on the same ref + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true jobs: test: runs-on: ubuntu-latest strategy: - matrix: - python-version: [3.10.x, 3.11.x, 3.12.x, 3.13.x] fail-fast: false + matrix: + python-version: ['3.10', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v4 - - name: Set up Python - uses: actions/setup-python@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - - name: Install Dependencies - run: python -m pip install -r ./requirements.txt && python -m pip install -r ./tests/requirements.txt + cache: pip + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + if [ -f tests/requirements.txt ]; then pip install -r tests/requirements.txt; fi - - name: Test + - name: Run test suite env: W24TECHREAD_AUTH_REGION: ${{ secrets.W24TECHREAD_AUTH_REGION }} - W24TECHREAD_AUTH_TOKEN: ${{ secrets.W24TECHREAD_AUTH_TOKEN }} - run: pytest + W24TECHREAD_AUTH_TOKEN: ${{ secrets.W24TECHREAD_AUTH_TOKEN }} + run: | + pytest -ra --color=yes # -ra gives a concise test summary