title: Creating a Full Haskell Stack with Tests
body: <p>I'm new to Haskell and I'm trying to structure a program under test.  I have decided to use HUnit and Cabal.  </p>
  
  <p>From what I have seen a well strucutred project looks the following:</p>
  
  <pre><code>src/
    AppName/
    Appname.hs
  testsuite/
    tests/
      AppName/
    TestRunner.hs
  AppName.cabal
  Setup.hs
  </code></pre>
  
  <p>The parts that are a mystery to me are the TestRunner.hs and the AppName.cabal.  </p>
  
  <p>What would a testrunner look like that runs all of the test under the testsuite/tests directory and sub directories?  And how can it be integrated with Cabal?</p>
  
  <p>Also, how do you put the hackage dependencies in the AppName.cabal and build them from the command line?</p>
  
  <p>I am having a hard time finding a full example building an application from scratch with tests and dependencies.</p>
  
  <p>Thanks</p>