From 8613f7154f815835fc5e6ddbe15e9aebc62109b1 Mon Sep 17 00:00:00 2001 From: Matthias Wisniowski Date: Mon, 26 Mar 2012 00:15:48 +0200 Subject: Fixed different values for h-function Using Integer instead of Int solved the difference in values for the different h-functions. Apparently they have equal performance. Added basic testcases. --- TestAufgabeFFP2.hs | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 TestAufgabeFFP2.hs (limited to 'TestAufgabeFFP2.hs') diff --git a/TestAufgabeFFP2.hs b/TestAufgabeFFP2.hs new file mode 100644 index 0000000..0df8612 --- /dev/null +++ b/TestAufgabeFFP2.hs @@ -0,0 +1,69 @@ +module Main where + +import Test.HUnit +import Control.Monad +import AufgabeFFP2 + +assertBoolF :: String -> Bool -> Assertion +assertBoolF msg b = when b (assertFailure msg) + +------------------------------------------------------------------------------- +-- 1 + +pps1 :: Test +pps1 = TestCase (assertEqual "pps" + [(3,5),(5,7),(11,13),(17,19),(29,31),(41,43), (59,61),(71,73),(101,103),(107,109)] + (take 10 pps)) + +pps2 :: Test +pps2 = TestCase (assertEqual "pps" + (347,349) + (pps!!20)) + +pps3 :: Test +pps3 = TestCase (assertEqual "pps" + (809,811) + (head (drop 30 pps))) + +ppsTests = TestList [pps1, pps2, pps3] + +------------------------------------------------------------------------------- +-- 2 + +------------------------------------------------------------------------------- +-- 3 + +------------------------------------------------------------------------------- +-- 4 + +gz1 :: Test +gz1 = TestCase (assertEqual "gz" + 144 + (gz 42)) + +gz2 :: Test +gz2 = TestCase (assertEqual "gz" + 400 + (gz 402)) + +gzs1 :: Test +gzs1 = TestCase (assertEqual "gzs" + 144 + (gzs!!41)) + +gzs2 :: Test +gzs2 = TestCase (assertEqual "gzs" + 400 + (gzs!!401)) + + +gzTests = TestList [gz1, gz2, gzs1, gzs2] + +------------------------------------------------------------------------------- + +tests :: [Test] +tests = [ppsTests, gzTests] + +main = do + forM tests $ \test -> + runTestTT test -- cgit v1.2.3