Skip to content

Regression Testing

walkloud edited this page Jun 26, 2020 · 1 revision

Running the regression test

We have marginally thorough regression testing implemented.

Any pull request to master must pass the regression test. This can be run by invoking the script

tests/regression/run_regression.sh

One must specify a few paths to execute the script. It will then run through an ordered list of input xml files. After generating data, it will run a python script that compares the newly generated h5 files against known results. A successful pass will end in

PASS:     lalibe_2pt_spectrum.h5
PASS:     lalibe_fh_proton.h5
PASS:     lalibe_3ptfn.h5
PASS:     lalibe_3ptfn_coherent_sink.h5
PASS:     lalibe_3ptfn_2src_coherent_sink.h5
PASS:     lalibe_2pt_spectrum.h5  =  lalibe_2pt_spectrum_lime.h5
PASS:     lalibe_3ptfn.h5  =  lalibe_3ptfn_coherent_sink.h5

When new tests are added, the input xml file must be added to the list, and also the list of files to diff in the python script must be updated tests/regression/py_scripts/perform_revision_test.py

Improvements to make

  • make a more thorough testing of coherent_sequential_sink and formfactor runs
    • add all spins, flavor DD and negative parity
    • get pos parity running through temporal boundary as well as negative parity running backwards
  • make python scripts that can cross check all results
    • spectrum with isospin breaking
    • formfactor files
    • pipi scattering
Clone this wiki locally