Skip to content

Update the sonar.coverage.exclusions SonarQube setting to match filen… #584

Update the sonar.coverage.exclusions SonarQube setting to match filen…

Update the sonar.coverage.exclusions SonarQube setting to match filen… #584

Workflow file for this run

# This workflow will install Python dependencies, run tests the specified Python version
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Python tests
on:
push:
branches:
- develop
- develop-ref
- feature_*
- main_*
- bugfix_*
- issue_*
- gha_*
paths-ignore:
- 'docs/**'
- '.github/pull_request_template.md'
- '.github/ISSUE_TEMPLATE/**'
- '**/README.md'
- '**/LICENSE.md'
pull_request:
types: [ opened, reopened, synchronize ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [ "3.10" ]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Retrieve METcalcpy repository develop branch
run: |
/usr/bin/git clone https://github.com/dtcenter/METcalcpy
python -m pip install --upgrade pip
cd METcalcpy
/usr/bin/git checkout develop
python -m pip install -e .
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest>=7.1.1
python -m pip install netcdf4==1.6.2
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
python -m pip install pytest-cov
# Checking the branch name, not necessary but useful when setting things up.
# - name: Extract branch name
# shell: bash
# run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
# id: extract_branch
- name: Test with pytest
run: |
echo "GITHUB wspace: $GITHUB_WORKSPACE"
export PYTHONPATH=$GITHUB_WORKSPACE/:$GITHUB_WORKSPACE/METdbLoad:$GITHUB_WORKSPACE/METdbLoad/ush:$GITHUB_WORKSPACE/METreformat:$GITHUB_WORKSPACE/METreadnc
echo "PYTHONPATH is $PYTHONPATH"
# test reformatter
cd $GITHUB_WORKSPACE/METreformat
cd test
pytest test_reformatting.py
pytest --cov
# test NetCDF reader
cd $GITHUB_WORKSPACE/METreadnc
cd test
pytest test_readnc.py
pytest --cov
echo "Finished unit tests and coverage"