Added first test suite for Mapping

This commit is contained in:
Jonas Betzendahl
2014-04-28 16:34:13 +02:00
parent f5f1f760cd
commit 07dac9aad1
4 changed files with 26 additions and 25 deletions

View File

@ -1,20 +0,0 @@
module Main where
import Test.Framework
import Test.Framework.Providers.QuickCheck2
import Map.Map
main :: IO ()
main = defaultMain tests
tests :: [Test]
tests =
[
testGroup "Map.Map"
[
testProperty "remdups idempotency" prop_rd_idempot
]
]

23
tests/Map/MapTestSuite.hs Normal file
View File

@ -0,0 +1,23 @@
{-# LANGUAGE TemplateHaskell #-}
module Main where
import Test.QuickCheck
import Test.Framework
import Test.Framework.TH
import Test.Framework.Providers.QuickCheck2
import Map.Map
main :: IO ()
main = $(defaultMainGenerator)
prop_rd_idempot :: [Int] -> Bool
prop_rd_idempot xs = remdups xs == (remdups . remdups) xs
prop_rd_length :: [Int] -> Bool
prop_rd_length xs = length (remdups xs) <= length xs
prop_rd_sorted :: [Int] -> Property
prop_rd_sorted xs = (not . null) xs ==> head (remdups xs) == minimum xs