Skip to content

Development

Development #584

name: Build and test UW3
# We should trigger this from an upload event. Note that pdoc requires us to import the
# built code, so this is a building test as well as documentation deployment
on:
push:
branches:
- main
- development
- Quick_Start_Docs
pull_request:
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Install Conda environment with Micromamba
uses: mamba-org/setup-micromamba@v1
with:
environment-file: ./.github/workflows/envs/build_uw_test.yml
cache-downloads: true
cache-environment: true
# the following may be needed if conda-forge is out of date
# - name: Add compatible petsc4py
# shell: bash -l {0}
# run: |
# export PETSC_DIR="/home/runner/micromamba-root/envs/uw3_test"
# pip3 install petsc4py==3.18 --upgrade
# gmsh is such a pig to install properly
- name: Add gmsh package
shell: bash -l {0}
run: |
pip install gmsh
- name: Build UW3
shell: bash -l {0}
run: |
export PETSC_DIR="/home/runner/micromamba/envs/uw3_test/lib"
VERSION=`python3 setup.py --version`
echo "UW - version " ${VERSION}
python3 setup.py develop
pip3 install -e .
# Test - split into short, low memory tests 0???_*
# and longer, solver-based tests 1???_*
- name: Run pytest
shell: bash -l {0}
run: |
pytest tests/test_00??*py
pytest tests/test_0[1-9]??*py
# Poisson solver tests
pytest tests/test_100[0-9]*py
# Stokes solver tests
pytest tests/test_1010*py
pytest tests/test_1011*py
pytest tests/test_1050*py
# Advection/Diffusion solvers
pytest tests/test_1100*py
pytest tests/test_1110*py