Shiva: HMMER testsuite ##################################################################### I. Compiled test drivers. --------------------------------------------------------------------- - A test driver runs with no arguments, gives no output, and returns EXIT_SUCCESS if the test passes. - If the test fails, the test driver calls Die() to print a diagnostic on stderr, and exit with EXIT_FAILURE. - The -v option always activates rudimentary verbose output on stdout. Current tests: --------------- alignalign_test Exercises P7ViterbiAlignAlignment() -- alignment of a fixed multiple alignment to an HMM. Aligns fn3 seed alignment to fn3 model, compares to results of aligning sequences individually; if an excessive number of discrepancies are detected, test fails. Other files: fn3.seed, fn3.hmm. evd_test Exercises code in histogram.c, especially EVD fitting Default generates 1000 EVD samples; fits EVD; tests that fitted parameters are reasonably close to real ones. masks_test Exercises code in masks.c Default runs XNU on a sequence and compares to a known result. parsingviterbi_test Exercises P7ParsingViterbi() in core_algorithms.c Runs Fn3 model against titin using both standard Viterbi and ParsingViterbi; compares results for identity. tophits_test Exercises tophits.c Generates random scores in three tiers (good, middling, bad). Uses RegisterHit() API; FullSort's them; tests that they end up in the right number/order. trace_test Exercises traceback code in core_algorithms.c Runs a simple HMM against synthetic sequences designed to exercise all possible arrangements of transitions, and does a TraceVerify() to be sure resulting trace is internally consistent. viterbi_exercise Exercises P7Viterbi and P7SmallViterbi in core_algorithms.c Configures Fn3 model into various modes; generates 100 random seqs from each configuration; does P7Viterbi and P7SmallViterbi alignments, TraceVerify()'s them, checks them for identity. weeviterbi_test Exercises P7WeeViterbi in core_algorithms.c Runs RRM model against two subsequences of human U1A; compares Viterbi trace to WeeViterbi trace. ##################################################################### II. Scripted test drivers. --------------------------------------------------------------------- Optiontests.pl Runs every documented option for every program, to be sure they're really connected up. ##################################################################### Obsolete: kept in RCS archive only for reproducibility of old results --------------------------------------------------------------------- fitting_test.c Tests of EVD and Gaussian histogram fitting code. 17 June 1997