diff --git a/.github/workflows/build-test.yaml b/.github/workflows/build-test.yaml index 2876a293a5..a8b9ef1154 100644 --- a/.github/workflows/build-test.yaml +++ b/.github/workflows/build-test.yaml @@ -22,21 +22,27 @@ jobs: # run all tests even if e.g. image tests fail early fail-fast: false matrix: - os: [ - macos-latest, - windows-latest, - ubuntu-latest, - ] + os: + - ubuntu-latest + - macos-latest python-version: ['3.12'] dependencies: [full] tests-type: [unit] test-runner: [pytest] + venv-loc: [bin] include: + - os: windows-latest + python-version: '3.12' + dependencies: full + tests-type: unit + test-runner: pytest + venv-loc: Scripts - os: ubuntu-20.04 - python-version: '3.9.2' + python-version: '3.10.0' dependencies: minimal tests-type: unit test-runner: pytest + venv-loc: bin - os: ubuntu-latest # this job is necessary for non-answer, 'yield' based tests # because pytest doesn't support such tests @@ -44,6 +50,7 @@ jobs: dependencies: full tests-type: unit test-runner: nose + venv-loc: bin - os: ubuntu-latest # answer tests use 'yield', so they require nose # they are also attached to a specific, occasionally updated, Python version @@ -52,12 +59,14 @@ jobs: dependencies: full tests-type: answer test-runner: nose + venv-loc: bin - os: ubuntu-latest # minimal tests with latest Python and no optional dependencies python-version: '3.x' dependencies: '' tests-type: unit test-runner: pytest + venv-loc: bin runs-on: ${{ matrix.os }} @@ -85,7 +94,7 @@ jobs: dependencies: ${{ matrix.dependencies }} run: | python -m venv .venv - source .venv/bin/activate + source .venv/${{matrix.venv-loc}}/activate source ./tests/ci_install.sh - name: Install and patch nosetest