

This document describes briefly how to add a test to the test suite of abinit.

1) find the present version of abinit, this will tell you in which directory
to work in: version 5.9.1 means in directory tests/v5. I will now presume we
are in v5.

2) Look through file tests/v5/README for a free test number. README describes
in a phrase the meaning and features for each test. If you have a slot free
near similar features or for the same input variable, use that one, otherwise
you can add test numbers on to the end (past 110 etc...). The exact number
you use does not matter, it just has to be consistent with the other files.
I will use <testnumber> in the following.

3) tests/v5/tests.cnf This is the configuration file for the tests, and
defines what will be done for each test. Its use is described extensively
in its header. E.g.:

<testnumber> seq psp1=HGH/32ge.4.hgh fn3=t<testnumber-1>o

will run sequential abinit, using the HGH pseudopotential for Ge, and
getting binary input from the output of the previous test.

4) The actual meat of the test is in its input file, placed in the file
tests/v5/Input/t<testnumber>.in This file will be fed to the corresponding
executable (abinit, anaddb, mrgddb, etc...) and the files file, if needed
will be generated automatically based on the tests.cnf file.

5) The result of the test is saved as a reference, against which the built
version will be diff-ed, in the file tests/v5/Ref/t<testnumber>.out

6) tests/v5/Input/report.in is the input file for the generation of the
final report, compiling differences between the .out files and the reference
files. This produces the files diff.t<testnumber>, fldiff.summary, and report


