Skip to content

Full-stack tests

Full-stack tests #767

Workflow file for this run

name: "Full-stack tests"
on:
push:
workflow_dispatch:
schedule:
- cron: "0 1 * * *"
defaults:
run:
shell: bash -leo pipefail {0} {0}
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macOS-latest, ubuntu-latest]
python-version: ["3.9", "3.10"]
env:
CI_OS: ${{ matrix.os }}
PYVER: ${{ matrix.python-version }}
steps:
- uses: actions/checkout@v4
# Each of these checkouts can be done on a feature branch
# https://github.com/actions/checkout#checkout-a-different-branch
- name: Checkout OpenFF Toolkit
uses: actions/checkout@v4
with:
repository: openforcefield/openff-toolkit
path: openff-toolkit
- name: Checkout OpenFF Evaluator
uses: actions/checkout@v4
with:
repository: openforcefield/openff-evaluator
path: openff-evaluator
- name: Checkout OpenFF Interchange
uses: actions/checkout@v4
with:
repository: openforcefield/openff-interchange
path: openff-interchange
- name: Set up conda environment
uses: mamba-org/setup-micromamba@v1
with:
environment-file: devtools/conda-envs/full.yaml
create-args: python=${{ matrix.python-version }}
- name: Install most recent development versions
run: |
micromamba remove --force openff-interchange -y
micromamba remove --force openff-evaluator -y
micromamba remove --force openff-toolkit -y
python -m pip install -e \
openff-toolkit/ \
openff-toolkit/utilities/test_plugins/ \
openff-evaluator/ \
openff-interchange/ \
openff-interchange/plugins/
- name: Run 'everything all at once' tests
run: |
python -m pytest -v -nauto --rootdir=. \
openff-interchange/openff/interchange/_tests/ \
--ignore=openff-interchange/openff/interchange/_tests/test_parameter_plugins.py::test_force_field_custom_handler \
--ignore=openff-interchange/openff/interchange/_tests/test_forcefield.py::TestForceFieldPluginLoading \
--ignore=openff-interchange/openff/interchange/_tests/test_parameter_plugins.py \
--ignore=openff-interchange/openff/interchange/_tests/unit_tests/smirnoff/test_create.py::TestCreateWithPlugins \
--ignore=openff-interchange/openff/interchange/_tests/test_parameter_plugins.py::test_load_handler_plugins
# --ignore=openff-toolkit/openff/toolkit/_tests/test_parameter_plugins.py \
# --ignore=openff-toolkit/openff/toolkit/_tests/test_forcefield.py::TestForceFieldPluginLoading \
# --ignore=openff-toolkit/openff/toolkit/_tests/test_nagl.py \
# openff-evaluator/openff/evaluator/