aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Hengel <sol@typeful.net>2012-01-11 14:25:48 +0100
committerDavid Waern <david.waern@gmail.com>2012-02-04 00:48:25 +0100
commit170646139ac4b411c4f036953688f18833fdf5f1 (patch)
tree5dd3f9ec73ce380d85a6afb9a0589fc8f9f460aa
parent101a9279fe28a817c2f274e365be2d7688fa6941 (diff)
Set unit tests for parser back to work
-rw-r--r--tests/unit-tests/.ghci1
-rw-r--r--tests/unit-tests/parsetests.hs15
-rwxr-xr-x[-rw-r--r--]tests/unit-tests/runparsetests.sh20
3 files changed, 22 insertions, 14 deletions
diff --git a/tests/unit-tests/.ghci b/tests/unit-tests/.ghci
new file mode 100644
index 00000000..10563664
--- /dev/null
+++ b/tests/unit-tests/.ghci
@@ -0,0 +1 @@
+:set -i../../src -i../../dist/build/autogen -i../../dist/build/haddock/haddock-tmp/ -packageghc -optP-include -optP../../dist/build/autogen/cabal_macros.h -XCPP -XDeriveDataTypeable -XScopedTypeVariables -XMagicHash
diff --git a/tests/unit-tests/parsetests.hs b/tests/unit-tests/parsetests.hs
index e0645401..7180a79e 100644
--- a/tests/unit-tests/parsetests.hs
+++ b/tests/unit-tests/parsetests.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE StandaloneDeriving, FlexibleInstances, UndecidableInstances, IncoherentInstances #-}
+{-# OPTIONS_GHC -fno-warn-orphans #-}
module Main (main) where
import Test.HUnit
@@ -6,9 +8,13 @@ import DynFlags (defaultDynFlags)
import Haddock.Lex (tokenise)
import Haddock.Parse (parseParas)
import Haddock.Types
+import Outputable
-instance Show RdrName where
- show x = "RdrName"
+instance Outputable a => Show a where
+ show = showSDoc . ppr
+
+deriving instance Show a => Show (Doc a)
+deriving instance Eq a =>Eq (Doc a)
data ParseTest = ParseTest {
input :: String
@@ -50,13 +56,14 @@ tests = [
]
+main :: IO ()
main = do
_ <- runTestTT $ TestList $ map toTestCase tests
return ();
where
toTestCase :: ParseTest -> Test
- toTestCase (ParseTest input result) = TestCase $ assertEqual input result (parse input)
+ toTestCase (ParseTest s r) = TestCase $ assertEqual s r (parse s)
parse :: String -> Maybe (Doc RdrName)
- parse input = parseParas $ tokenise defaultDynFlags input (0,0)
+ parse s = parseParas $ tokenise (defaultDynFlags undefined) s (0,0)
diff --git a/tests/unit-tests/runparsetests.sh b/tests/unit-tests/runparsetests.sh
index 1dae69c2..ead0ccf5 100644..100755
--- a/tests/unit-tests/runparsetests.sh
+++ b/tests/unit-tests/runparsetests.sh
@@ -1,15 +1,15 @@
#!/bin/sh
cd `dirname $0`
-runhaskell -hide-all-packages -cpp \
- -packagecontainers \
- -packagearray \
- -packagebase \
+runhaskell \
+ -i../../src \
+ -i../../dist/build/autogen \
+ -i../../dist/build/haddock/haddock-tmp/ \
-packageghc \
- -packagexhtml \
- -packageghc-paths \
- -packageHUnit \
- -i../../dist/build/ \
- -i../../src/ \
- -optP-include -optP../../dist/build/autogen/cabal_macros.h \
+ -optP-include \
+ -optP../../dist/build/autogen/cabal_macros.h \
+ -XCPP \
+ -XDeriveDataTypeable \
+ -XScopedTypeVariables \
+ -XMagicHash \
parsetests.hs