This repository contains test cases for the CTGoMartini package.
The test suite is organized into the following categories:
These tests validate the core API functionality of CTGoMartini:
- Classic Martini Tests: Verify the implementation of the standard Martini force field by comparing OpenMM and GROMACS simulation results for energy and forces.
- Multiple Basin Go-Martini Tests: Test the multiple basin potential implementation that allows simulation of conformational changes between different states.
- Contacts Tests: Validate contact map implementations.
- Energy Item Comparison: Compare energy terms between different implementations.
These tests focus on specific functional components:
- WriteItp Tests: Verify the generation of GROMACS topology (.itp) files.
- ConvertLongShortElasticBonds Tests: Test the conversion between different elastic network representations.
These tests validate the execution of simulation workflows:
- GenMBItp Tests: Test the generation of multiple basin topology files.
- RunMBGoMartini Tests: Verify the execution of Multiple Basin Go-Martini simulations.
The tests/data/ directory contains reference data for various test cases, organized by test category.
To run all tests:
python -m tests.testsThis will execute the pytest suite on all test files in the project.
To run specific test categories:
python -m pytest tests/api/ # Run only API tests
python -m pytest tests/func/ # Run only functional tests
python -m pytest tests/run/ # Run only run testsThe test suite requires:
- Python 3.12
- CTGoMartini
- pytest