provide a more detailed description of the bundled tests

This commit is contained in:
Axel Kohlmeyer
2024-02-06 11:37:41 -05:00
parent 1cecfb9df1
commit 0bb6be5dd9
2 changed files with 25 additions and 7 deletions

View File

@ -241,14 +241,31 @@ will be skipped if prerequisite features are not available in LAMMPS.
time. Preference is given to parts of the code base that are easy to time. Preference is given to parts of the code base that are easy to
test or commonly used. test or commonly used.
Many tests have special test programs that test individual functions or Tests as shown by the ``ctest`` program are command lines defined in the
classes. There are also special cases for the Fortran and Python ``CMakeLists.txt`` files in the ``unittest`` directory tree. A few
module. Tests for force computing or modifying styles (e.g. pair styles tests simply execute LAMMPS with specific command line flags and check
or bond styles) are performed with the same test executable using input the output to the screen for expected content. A large number of unit
files in YAML format. So to add a test for another style of this kind tests are special tests programs using the `GoogleTest framework
it may be sufficient to add a suitable YAML file. :doc:`Detailed <https://github.com/google/googletest/>`_ and linked to the LAMMPS
library that test individual functions or create a LAMMPS class
instance, execute one or more commands and check data inside the LAMMPS
class hierarchy. There are also tests for the C-library, Fortran, and
Python module interfaces to LAMMPS. The Python tests use the Python
"unittest" module in a similar fashion than the others use `GoogleTest`.
These special test programs are structured to have perform multiple
individual tests internally and each of those contains several checks
(aka assertions) for internal data being changed as expected.
Tests for force computing or modifying styles (e.g. styles for non-bonded
and bonded interactions and selected fixes) are run by using a more generic
test program that reads its input from files in YAML format. The YAML file
provides the information on how to customized the test program to test
a specific style and - if needed - with specific settings.
To add a test for another, similar style (e.g. a new pair style) it is
usually sufficient to add a suitable YAML file. :doc:`Detailed
instructions for adding tests <Developer_unittest>` are provided in the instructions for adding tests <Developer_unittest>` are provided in the
Programmer Guide part of the manual. Programmer Guide part of the manual. A description of what happens
during the tests is given below.
Unit tests for force styles Unit tests for force styles
^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^

View File

@ -3797,6 +3797,7 @@ unimodal
uninstall uninstall
unitarg unitarg
unitless unitless
unittest
Universite Universite
unix unix
unmaintained unmaintained