Add test suite for LALApps codes in HeterodyneSearch/
Description
This MR provides tests for the following programs in HeterodyneSearch/
:
-
lalapps_pulsar_parameter_estimation_nested
: adds the existing test scriptstest_flat_prior
andtest_flat_evidence
to the test suite. I had to change the parameters a bit to get the tests to run (relatively) quickly;test_flat_prior
now takes ~2 minutes to run, andtest_flat_evidence
~10 minutes to run, which is the best I could do. (In the case oftest_flat_evidence
, I couldn't get each call tolalapps_pulsar_parameter_estimation_nested
to run in faster than ~10--15 seconds, and I couldn't reduce the number of calls from 40 without the test failing thensigma
threshold.) -
lalapps_ssbtodetector
: I wrote a basic test exercising the code and checking the SSB--detector time delays were sensible -
lalapps_pulsar_frequency_evolution
: I wrote a basic test comparing to a reference result
This MR also removes lalapps_SplInter
and lalapps_create_pulsar_signal_frame
as installed programs, as I believe they're no longer in regular use. This means that they don't need to have test scripts (which are only required for installed programs).
I've not written any tests for the various lalapps_knope...
scripts. Indeed I've actually given up on requiring both C programs and Python scripts to have test suites. C programs in LALApps are generally search codes for which a test suite make sense. Python scripts however tend to be helpers which generate/run pipelines, collate results, etc. and it's harder to design a sensible test; so although people are encouraged to write tests for Python pipeline scripts, I won't be requiring it. The first 5 patches in this MR change the build system to no longer require tests for Python scripts, as well as a few other improvements.
Closes #320 (closed)
API Changes and Justification
Backwards Compatible Changes
-
This change does not modify any class/function/struct/type definitions in a public C header file or any Python class/function definitions -
This change adds new classes/functions/structs/types to a public C header file or Python module
Backwards Incompatible Changes
-
This change modifies an existing class/function/struct/type definition in a public C header file or Python module -
This change removes an existing class/function/struct/type from a public C header file or Python module
Review Status
@matthew-pitkin Please review the new test scripts and changes to existing test scripts
@david-keitel FYI regarding to the change in policy regarding which programs require tests