Most of the tests follow the same pattern.

 * test.pl that uses Test::More, and demonstrates whatever functionality 
   that we're trying to test.  This is the reference code.

 * test.c, which tests the libtap reimplementation of the same functionality.

 * test.t, which compiles the .c program, runs both test scripts, and then 
   diffs their output to make sure it's identical.
