@@ -7,33 +7,72 @@ import Data.Binary.Put ( runPut )
9import Data.Bits
9import Data.Bits
10import Data.Word
11import Data.Word
11import Foreign.Storable
12import Foreign.Storable
12import System.Random
13import System.Random
14import BitsGet
16import BitsGet
15import BitsPut
17import BitsPut
19+import Test.Framework.Options ( TestOptions'(..) )
20+import Test.Framework.Providers.QuickCheck2 ( testProperty )
21+import Test.Framework.Runners.Console ( defaultMainWithOpts )
22+import Test.Framework.Runners.Options ( RunnerOptions'(..) )
23+import Test.Framework ( Test, testGroup )
17import Test.QuickCheck
24import Test.QuickCheck
28+ defaultMainWithOpts tests (setMaxTestCases (if null args then 1024 else read (head args)))
30+ -- increase the number of test cases
33+ { ropt_test_options = Just $
35+ { topt_maximum_generated_tests = Just n
41+ [ testGroup "Internal test functions"
20− quickCheck prop_bitreq
42+ [ testProperty "prop_bitreq" prop_bitreq ]
44+ , testGroup "Custom test cases"
21− quickCheck prop_composite_case
45+ [ testProperty "prop_composite_case" prop_composite_case ]
47+ , testGroup "prop_put_with_bitreq"
23− quickCheck (prop_putget_with_bitreq :: Word8 -> Property)
48+ [ testProperty "Word8" (prop_putget_with_bitreq :: Word8 -> Property)
24− quickCheck (prop_putget_with_bitreq :: Word16 -> Property)
49+ , testProperty "Word16" (prop_putget_with_bitreq :: Word16 -> Property)
25−
50+ , testProperty "Word32" (prop_putget_with_bitreq :: Word32 -> Property)
51+ -- , testProperty "Word64" (prop_putget_with_bitreq :: Word64 -> Property)
54+ , testGroup "prop_putget_list_simple"
26− quickCheck (prop_putget_list_simple :: [Bool] -> Property)
55+ [ testProperty "Bool" (prop_putget_list_simple :: [Bool] -> Property)
27− quickCheck (prop_putget_list_simple :: [Word8] -> Property)
56+ , testProperty "Word8" (prop_putget_list_simple :: [Word8] -> Property)
28− quickCheck (prop_putget_list_simple :: [Word16] -> Property)
57+ , testProperty "Word16" (prop_putget_list_simple :: [Word16] -> Property)
29−
58+ , testProperty "Word32" (prop_putget_list_simple :: [Word32] -> Property)
59+ -- , testProperty "Word64" (prop_putget_list_simple :: [Word64] -> Property)
62+ , testGroup "prop_putget_list_with_bitreq"
30− quickCheck (prop_putget_list_with_bitreq :: [Word8] -> Property)
63+ [ testProperty "Word8" (prop_putget_list_with_bitreq :: [Word8] -> Property)
31− quickCheck (prop_putget_list_with_bitreq :: [Word16] -> Property)
64+ , testProperty "Word16" (prop_putget_list_with_bitreq :: [Word16] -> Property)
65+ , testProperty "Word32" (prop_putget_list_with_bitreq :: [Word32] -> Property)
66+ -- , testProperty "Word64" (prop_putget_list_with_bitreq :: [Word64] -> Property)
33 -- these tests use the R structure
71 -- these tests use the R structure
35 -- quickCheck prop_Word32_from_2_Word16
73 -- quickCheck prop_Word32_from_2_Word16
36 -- quickCheck prop_Word32_from_Word8_and_Word16
74 -- quickCheck prop_Word32_from_Word8_and_Word16
38prop_putget_with_bitreq :: (BinaryBit a, Num a, Bits a, Ord a) => a -> Property
77prop_putget_with_bitreq :: (BinaryBit a, Num a, Bits a, Ord a) => a -> Property
39prop_putget_with_bitreq w = property $
78prop_putget_with_bitreq w = property $