Fix imports #47
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Author(s): Minsik Cho, Shaun Weatherly | |
# Based on: https://docs.github.com/en/actions/use-cases-and-examples/building-and-testing/building-and-testing-python | |
name: Run Unit Tests for quemb | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
permissions: | |
contents: read | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.9", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Prepare pip | |
run: | | |
python -m pip install --upgrade pip | |
- uses: actions/cache@v4 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('setup.py') }}-${{ hashFiles('dev-requirements.txt') }} | |
- name: Install dependencies | |
run: | | |
pip install --upgrade --upgrade-strategy eager pytest ruff | |
if [ -f requirements.txt ]; then pip install --upgrade --upgrade-strategy eager -r requirements.txt; fi | |
pip install git+https://github.com/pyscf/dmrgscf | |
PYSCFHOME=$(pip show pyscf-dmrgscf | grep 'Location' | tr ' ' '\n' | tail -n 1) | |
wget https://raw.githubusercontent.com/pyscf/dmrgscf/master/pyscf/dmrgscf/settings.py.example | |
mv settings.py.example ${PYSCFHOME}/pyscf/dmrgscf/settings.py | |
pip install . | |
echo ${{ github.workspace }} > $(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")/quemb.pth | |
- name: Check formatting | |
run: | | |
ruff format --diff | |
- name: Static analysis | |
run: | | |
ruff check . || true # for the moment we want to report always report success | |
- name: Test with pytest | |
run: | | |
cd tests | |
QUEMB_SKIP_EXPENSIVE_TESTS=true pytest --doctest-modules --junitxml=junit/quemb-test-results_${{ matrix.python-version }}.xml | |
- name: Upload pytest junit results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: quemb-test-results_${{ matrix.python-version }} | |
path: tests/junit/quemb-test-results_${{ matrix.python-version }}.xml |