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