Interface for running HUnit tests via Cabal 1.16.
DEPRECATED: I no longer use this, and very much prefer HSpec. Therefore:
- You will see no active development here, though I'm happy to merge PRs
- I will not be publishing this to Hackage, though I'd be fine with someone else doing so
git clone ... && cd ... && cabal install
Add a suite to your cabal file:
Test-Suite test-your-thing type: detailed-0.9 test-module: Test.YourTestModule build-depends: base , Cabal , HUnit , cabal-test-hunit
Write some tests in
import Test.HUnit import qualified Distribution.TestSuite as C import qualified Distribution.TestSuite.HUnit as H tests :: IO [C.Test] tests = return $ map (uncurry H.test) testCases testCases :: [(String, Test)] testCases = [("Truth tests", truthTest)] truthTest :: Test truthTest = TestCase $ assertEqual "True is true" True True
cabal configure --enable-tests cabal build cabal test
An early version of this module, written by Thomas Tuegel in 2010, can be found in this darcs repo.
This file shares no code with that one, as the changes in Cabal 1.16 required it be entirely rewritten. I've retained Thomas' LICENSE but removed his copyright; I hope that's appropriate.