diff --git a/.github/workflows/pytest.yaml b/.github/workflows/pytest.yaml index 8473cac..c92e2bf 100644 --- a/.github/workflows/pytest.yaml +++ b/.github/workflows/pytest.yaml @@ -13,6 +13,11 @@ jobs: # ---------------------------------------------------------------------- unit-test: runs-on: ubuntu-latest + strategy: + matrix: + vars: [ { python-version: '3.8', sleep: '0s' }, { python-version: '3.9', sleep: '60s' }, + { python-version: '3.10', sleep: '120s' }, { python-version: '3.11', sleep: '180s' } ] + name: Python ${{ matrix.vars.python-version }} Test steps: - name: Checkout source code uses: actions/checkout@v2 @@ -28,25 +33,43 @@ jobs: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{ hashFiles('environment.yml') }} - - name: Install miniconda - uses: conda-incubator/setup-miniconda@v2 + - name: Install micromamba + uses: mamba-org/setup-micromamba@v1 with: - miniconda-version: "latest" - mamba-version: "*" - use-mamba: true - python-version: 3.8 - activate-environment: base - channels: conda-forge,in-core - environment-file: environment.yml - use-only-tar-bz2: true - conda-build-version: "*" + create-args: >- + python=${{ matrix.vars.python-version }} + pytest + environment-file: environment.yml + generate-run-shell: true +# miniconda-version: "latest" +# mamba-version: "*" +# use-mamba: true +# python-version: 3.8 +# activate-environment: base +# channels: conda-forge,in-core +# environment-file: environment.yml +# use-only-tar-bz2: true +# conda-build-version: "*" + + - name: Sleep for ${{ matrix.vars.sleep }} to avoid multiple pytests run concurrently + uses: jakejarvis/wait-action@master + with: + time: ${{ matrix.vars.sleep }} - name: Run pyincore viz tests with pytest run: | echo "${{secrets.PYTEST_USER_TOKEN}}" > tests/pyincore_viz/.incorepw - $CONDA/bin/pytest --cache-clear -s tests/pyincore_viz/test_pyincore_viz.py --junitxml=test-reports/viz_results.xml + python -m pytest tests/pyincore_viz/test_pyincore_viz.py + shell: micromamba-shell {0} +# run: | +# echo "${{secrets.PYTEST_USER_TOKEN}}" > tests/pyincore_viz/.incorepw +# $CONDA/bin/pytest --cache-clear -s tests/pyincore_viz/test_pyincore_viz.py --junitxml=test-reports/viz_results.xml - name: Run analysis viz tests with pytest run: | echo "${{secrets.PYTEST_USER_TOKEN}}" > tests/pyincore_viz/.incorepw - $CONDA/bin/pytest --cache-clear -s tests/pyincore_viz/test_analysis_viz.py --junitxml=test-reports/analysis_results.xml \ No newline at end of file + python -m pytest tests/pyincore_viz/test_analysis_viz.py + shell: micromamba-shell {0} +# run: | +# echo "${{secrets.PYTEST_USER_TOKEN}}" > tests/pyincore_viz/.incorepw +# $CONDA/bin/pytest --cache-clear -s tests/pyincore_viz/test_analysis_viz.py --junitxml=test-reports/analysis_results.xml \ No newline at end of file