gmxapi testing support tools
The gmxapi C++ API tests currently require facilities from the libgromacs target and mdrun modules, but it ought to be possible to run standalone tests of the external interfaces without coupling to lower level interfaces and tools only available in the build tree.
The gmxapi Python package has some infrastructure to allow pytest to prepare some input files with
solvate, but it does not share this infrastructure.
We could move the testing infrastructure from gmxapi.testsupport and the testing directory to a separate module that can be used more widely, such as for libgmxapi, gmxapi, and sample_restraint. Such a facility could also be helpful in updating and maintaining the regression tests.
- Under what circumstances do we want to build the Python package as part of a normal GROMACS build?
- Should we make additional testing tools part of the gmxapi package or a standalone package? What dependencies can it have? Should it be installed and/or distributed? Can it have a compiled component?
- Should this effort interact with the existing substantial mdrun test support infrastructure, and in what way?