ATOMScience-org / AMPL

The ATOM Modeling PipeLine (AMPL) is an open-source, modular, extensible software pipeline for building and sharing models to advance in silico drug discovery.
MIT License
136 stars 68 forks source link

Add pytest CI (Github Actions) #349

Closed Kartstig closed 2 months ago

Kartstig commented 3 months ago

Background

This adds 2 pytest actions:

  1. unit
  2. integrative The integrative tests are naively chunked at the moment between integrative-1 and integrative-2`

I think there should be an issue ticket created to rewrite some tests to be folderpath agnostic. If you have filename collision issues, they can be solved by other means. The benefit can be gained when you run parallel test workers. See how the unit test differs, whereas the integrative tests will be run sequentially if we use integrative_batch_tests.sh. I think this will make a difference since the integration tests take about 29m :grimacing: image

Once you merge this, you should get builds for every commit. I think it might make sense to at least have unit tests be a required step before merging.

I am happy to guide you through those GitHub settings changes

References

mauvais2 commented 3 months ago

pytest.yml a few places have pip install -r pip/dev_requirements.txt but there's no dev_requirements.txt. Do we need `dev_requirements.txt'?

Kartstig commented 3 months ago

pytest.yml a few places have pip install -r pip/dev_requirements.txt but there's no dev_requirements.txt. Do we need `dev_requirements.txt'?

Yeah in my fork I've got the dependencies split up. It should still work as it will optionally install this file if present