This is a testsuite for Haddock that uses the concept of "golden files". That
is, it compares output files against a set of reference files.

To add a new test: 

 1) Create a module in the "tests" directory.

 2) Run runtests.hs. You should now have output/<modulename>.html. The test
    passes since there is no reference file to compare with.

 3) To make a reference file from the output file, do
      runhaskell copy.hs <modulename>

Tips and tricks:

You can
  runhaskell copy.hs

to copy all output files into reference files.

You can
  runhaskell runtests.hs all

to continue despite a failing test.

You can pass extra options to haddock like so
  runhaskell runtests.hs --title="All Tests" all