diff options
Diffstat (limited to 'dev-haskell/test-framework-th/metadata.xml')
-rw-r--r-- | dev-haskell/test-framework-th/metadata.xml | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/dev-haskell/test-framework-th/metadata.xml b/dev-haskell/test-framework-th/metadata.xml new file mode 100644 index 000000000000..03be45ce38cf --- /dev/null +++ b/dev-haskell/test-framework-th/metadata.xml @@ -0,0 +1,54 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>haskell</herd> + <longdescription> + @test-framework-th@ contains two interesting functions: @defaultMainGenerator@ and @testGroupGenerator@. + + @defaultMainGenerator@ will extract all functions beginning with case_ or prop_ in the module and put them in a testGroup. + + > -- file SomeModule.hs + > ( -# LANGUAGE TemplateHaskell #- ) + > module SomeModule where + > import Test.Framework.TH + > import Test.Framework + > import Test.HUnit + > import Test.Framework.Providers.HUnit + > import Test.Framework.Providers.QuickCheck2 + > + > -- observe this line! + > main = $(defaultMainGenerator) + > case_1 = do 1 @=? 1 + > case_2 = do 2 @=? 2 + > prop_reverse xs = reverse (reverse xs) == xs + > where types = xs::[Int] + + is the same as + + > -- file SomeModule.hs + > ( -# LANGUAGE TemplateHaskell #- ) + > module SomeModule where + > import Test.Framework.TH + > import Test.Framework + > import Test.HUnit + > import Test.Framework.Providers.HUnit + > import Test.Framework.Providers.QuickCheck2 + > + > -- observe this line! + > main = + > defaultMain [ + > testGroup "SomeModule" [ testCase "1" case_1, testCase "2" case_2, testProperty "reverse" prop_reverse] + > ] + > + > case_1 = do 1 @=? 1 + > case_2 = do 2 @=? 2 + > prop_reverse xs = reverse (reverse xs) == xs + > where types = xs::[Int] + + @testGroupGenerator@ is like @defaultMainGenerator@ but without @defaultMain@. It is useful if you need a function for the testgroup + (e.g. if you want to be able to call the testgroup from another module). + </longdescription> + <upstream> + <remote-id type="github">finnsson/test-generator</remote-id> + </upstream> +</pkgmetadata> |