Skip to content

[pre-commit.ci] pre-commit autoupdate #3951

[pre-commit.ci] pre-commit autoupdate

[pre-commit.ci] pre-commit autoupdate #3951

name: Run Tests
on:
push:
# This should disable running the workflow on tags, according to the
# on.<push|pull_request>.<branches|tags> GitHub Actions docs.
branches:
- "*"
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
tests:
name: Run Tests
env:
PYTHON: ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
defaults:
run:
# Adding -l {0} helps ensure conda can be found properly in windows.
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest]
python-version: [3.8, 3.9, "3.10", "3.11"]
steps:
- uses: actions/checkout@main
with:
fetch-depth: 0
- name: Set ENV NAME
run: |
if [[ "${{ runner.os }}" = "Windows" ]]; then
echo "::set-output name=ENV_NAME::pyuvdata_tests_windows"
else
echo "::set-output name=ENV_NAME::pyuvdata_tests"
fi
id: env_name
- name: Setup Minimamba
uses: conda-incubator/setup-miniconda@v2
with:
miniforge-variant: Mambaforge
miniforge-version: latest
use-mamba: true
python-version: ${{ matrix.python-version }}
environment-file: ci/${{ steps.env_name.outputs.ENV_NAME }}.yml
activate-environment: ${{ steps.env_name.outputs.ENV_NAME }}
run-post: false
- name: Conda Info
run: |
conda info -a
conda list
PYVER=`python -c "import sys; print('{:d}.{:d}'.format(sys.version_info.major, sys.version_info.minor))"`
if [[ $PYVER != $PYTHON ]]; then
exit 1;
fi
- name: Install
run: |
CFLAGS="-DCYTHON_TRACE=1 -DCYTHON_TRACE_NOGIL=1" pip install .
- name: Run Tests
run: |
mkdir -p empty
cd empty
pytest --pyargs pyuvdata -n auto --dist=loadfile --cov=pyuvdata --cov-config=../.coveragerc --cov-report xml:../coverage.xml
cd ..
- uses: codecov/codecov-action@v3
if: success()
with:
token: ${{secrets.CODECOV_TOKEN}} #required
file: ./coverage.xml #optional