https://github.com/RadioAstronomySoftwareGroup/pyuvdata
Raw File
Tip revision: 61b7557a6b74c50bc90131395b201365b9200f46 authored by Steven Murray on 03 February 2023, 21:36:48 UTC
fix: fix all tests
Tip revision: 61b7557
macosx_windows_ci.yaml
name: Run Tests

on: [push, 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"]
    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 }}

      - 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@v2.0.2
        if: success()
        with:
          token: ${{secrets.CODECOV_TOKEN}} #required
          file: ./coverage.xml #optional
back to top