@@ -1,5 +1,4 @@
11{-# LANGUAGE BangPatterns, OverloadedStrings #-}
2−{-# OPTIONS_GHC -fno-warn-orphans #-}
32module QC.ByteString (tests) where
43
54import Control.Applicative ((<$>), (<*>))
@@ -7,6 +6,7 @@ import Data.Char (chr, ord)
76import Data.Int (Int64)
87import Data.Word (Word8)
98import Prelude hiding (take, takeWhile)
9+import QC.Common ()
1010import Test.Framework (Test)
1111import Test.Framework.Providers.QuickCheck2 (testProperty)
1212import Test.QuickCheck
@@ -17,22 +17,6 @@ import qualified Data.ByteString as B
1717import qualified Data.ByteString.Lazy as L
1818import qualified Data.ByteString.Lazy.Char8 as L8
1919
20−instance Arbitrary B.ByteString where
21− arbitrary = B.pack <$> arbitrary
22−
23−instance Arbitrary L.ByteString where
24− arbitrary = sized $ \n -> resize (round (sqrt (toEnum n :: Double)))
25− ((L.fromChunks . map (B.pack . nonEmpty)) <$> arbitrary)
26− where nonEmpty (NonEmpty a) = a
27−
28−-- Naming.
29−
30−{-
31−label (NonEmpty s) = case parse (anyWord8 <?> s) B.empty of
32− (_, Left err) -> s `isInfixOf` err
33− _ -> False
34−-}
35−
3620-- Basic byte-level combinators.
3721
3822maybeP :: PL.Parser r -> L.ByteString -> Maybe r