on master help sign in
Fix up the tests a bit
87fef79Duncan Coutts
Data/Text/Utf32/Fusion.hs+5−5
@@ -1,10 +1,10 @@
1−{-# OPTIONS_GHC -fbang-patterns #-}
1+{-# LANGUAGE BangPatterns #-}
2
2
3−module Text.Utf32.Fusion where
3+module Data.Text.Utf32.Fusion where
4
4
5−import Text.Fusion hiding (stream, unstream)
5+import Data.Text.Fusion hiding (stream, unstream)
6−import Text.Utf32.Internal
6+import Data.Text.Utf32.Internal
7−import Text.UnsafeChar
7+import Data.Text.UnsafeChar
8import Data.Array.Base
8import Data.Array.Base
9import Data.Word
9import Data.Word
10import Data.Array.ST
10import Data.Array.ST
Data/Text/Utf32/Internal.hs+2−4
@@ -1,8 +1,6 @@
1−{-# OPTIONS_GHC -fglasgow-exts #-}
2−
3−module Text.Utf32.Internal where
1+module Data.Text.Utf32.Internal where
4
2
5import Data.Array.Unboxed
3import Data.Array.Unboxed
6import Data.Word
4import Data.Word
7
5
8−data Text = Text !(UArray Int Word32) !Int !Int
6+data Text = Text !(UArray Int Word32) !Int !Int
Data/Text/Utf8/Fusion.hs+7−7
@@ -1,17 +1,17 @@
1−{-# OPTIONS_GHC -fbang-patterns -fglasgow-exts #-}
1+{-# LANGUAGE BangPatterns #-}
2
2
3−module Text.Utf8.Fusion where
3+module Data.Text.Utf8.Fusion where
4
4
5import Data.Array.Base
5import Data.Array.Base
6import Data.Word
6import Data.Word
7import Control.Monad.ST
7import Control.Monad.ST
8import Data.Text.UnsafeChar
8import Data.Text.UnsafeChar
9import Control.Monad
9import Control.Monad
10−import Char
10+import Data.Char
11
11
12−import Text.Utf8
12+import Data.Text.Utf8
13−import Text.Utf8.Internal
13+import Data.Text.Utf8.Internal
14−import Text.Fusion hiding (stream,unstream)
14+import Data.Text.Fusion hiding (stream,unstream)
15
15
16stream :: Text -> Stream Char
16stream :: Text -> Stream Char
17stream (Text arr off len) = Stream next off len
17stream (Text arr off len) = Stream next off len
@@ -81,4 +81,4 @@ unstream (Stream next0 s0 len) = x `seq` (Text (fst x) 0 (snd x))
81{-# RULES
81{-# RULES
82"STREAM stream/unstream fusion" forall s.
82"STREAM stream/unstream fusion" forall s.
83 stream (unstream s) = s
83 stream (unstream s) = s
84− #-}
84+ #-}
Data/Text/Utf8/Internal.hs+2−2
@@ -1,6 +1,6 @@
1−module Text.Utf8.Internal where
1+module Data.Text.Utf8.Internal where
2
2
3import Data.Array.Unboxed
3import Data.Array.Unboxed
4import Data.Word
4import Data.Word
5
5
6−data Text = Text !(UArray Int Word8) !Int !Int
6+data Text = Text !(UArray Int Word8) !Int !Int
tests/Bench.hs+6−8
@@ -1,11 +1,9 @@
1−{-# OPTIONS_GHC -fglasgow-exts -fbang-patterns #-}
2−
3--module Bench where
1--module Bench where
4
2
5import BenchUtils
3import BenchUtils
6import System.Mem
4import System.Mem
7import Control.Concurrent
5import Control.Concurrent
8−import Char
6+import Data.Char
9import Data.Array.IArray
7import Data.Array.IArray
10import System.CPUTime
8import System.CPUTime
11import System.IO
9import System.IO
@@ -13,10 +11,10 @@ import System.IO.Unsafe
13import Text.Printf
11import Text.Printf
14import Control.Exception
12import Control.Exception
15
13
16−import qualified Text as T
14+import qualified Data.Text as T
17−import Text.Internal
15+import Data.Text.Internal
18−import qualified Text.Fusion as S
16+import qualified Data.Text.Fusion as S
19−import Text.Fusion (Encoding(..))
17+import Data.Text.Fusion (Encoding(..))
20
18
21import qualified Data.List as L
19import qualified Data.List as L
22import qualified Data.ByteString as B
20import qualified Data.ByteString as B
@@ -183,4 +181,4 @@ smp_sip_tests = [
183 ("take",
181 ("take",
184 [F (app1 $ T.take 30000000),
182 [F (app1 $ T.take 30000000),
185 Flist (app2 $ L.take 30000000)])
183 Flist (app2 $ L.take 30000000)])
186− ]
184+ ]
tests/BenchUtils.hs+2−3
@@ -1,5 +1,4 @@
1−{-# OPTIONS_GHC -fglasgow-exts -fbang-patterns #-}
1+{-# LANGUAGE ExistentialQuantification #-}
2−
3module BenchUtils where
2module BenchUtils where
4
3
5import qualified Data.List as L
4import qualified Data.List as L
@@ -7,7 +6,7 @@ import Data.ByteString (ByteString(..))
7import Data.Word
6import Data.Word
8import Text.Printf
7import Text.Printf
9import System.IO
8import System.IO
10−import Text.Internal (Text(..))
9+import Data.Text.Internal (Text(..))
11import System.Mem
10import System.Mem
12import System.CPUTime
11import System.CPUTime
13import Control.Exception
12import Control.Exception
tests/EncodingBench.hs+2−2
@@ -1,4 +1,4 @@
1−{-# OPTIONS_GHC -fglasgow-exts #-}
1+{-# LANGUAGE ExistentialQuantification #-}
2
2
3import BenchUtils
3import BenchUtils
4import qualified Data.Text.Utf8.Fusion as U8
4import qualified Data.Text.Utf8.Fusion as U8
@@ -103,4 +103,4 @@ smp_sip_tests = [
103 [F $ app1 $ S.foldl' (\a w -> a+1::Int) 0 . U8.stream,
103 [F $ app1 $ S.foldl' (\a w -> a+1::Int) 0 . U8.stream,
104 F $ app2 $ S.foldl' (\a w -> a+1::Int) 0 . S.stream,
104 F $ app2 $ S.foldl' (\a w -> a+1::Int) 0 . S.stream,
105 F $ app3 $ S.foldl' (\a w -> a+1::Int) 0 . U32.stream])
105 F $ app3 $ S.foldl' (\a w -> a+1::Int) 0 . U32.stream])
106− ]
106+ ]
tests/FusionBench.hs+4−4
@@ -1,12 +1,12 @@
1import Prelude hiding (zip,zip3,fst,snd)
1import Prelude hiding (zip,zip3,fst,snd)
2
2
3import BenchUtils
3import BenchUtils
4−import Char
4+import Data.Char
5import qualified Data.List as L
5import qualified Data.List as L
6import qualified Data.ByteString as B
6import qualified Data.ByteString as B
7−import qualified Text as T
7+import qualified Data.Text as T
8−import Text.Fusion (Encoding(..))
8+import Data.Text.Fusion (Encoding(..))
9−import qualified Text.Fusion as S
9+import qualified Data.Text.Fusion as S
10import Text.Printf
10import Text.Printf
11import System.IO
11import System.IO
12import System.Mem
12import System.Mem
tests/Properties.hs+5−5
@@ -1,13 +1,13 @@
1−{-# OPTIONS_GHC -fno-rewrite-rules #-}
1+{-# OPTIONS_GHC -fno-enable-rewrite-rules #-}
2
2
3import Test.QuickCheck
3import Test.QuickCheck
4import Text.Show.Functions
4import Text.Show.Functions
5
5
6import Prelude
6import Prelude
7−import qualified Text as T
7+import qualified Data.Text as T
8−import Text (pack,unpack)
8+import Data.Text (pack,unpack)
9−import qualified Text.Fusion as S
9+import qualified Data.Text.Fusion as S
10−import Text.Fusion (unstream,stream)
10+import Data.Text.Fusion (unstream,stream)
11import qualified Data.List as L
11import qualified Data.List as L
12
12
13
13
tests/QuickCheckUtils.hs+4−4
@@ -3,10 +3,10 @@ module QuickCheckUtils where
3import Test.QuickCheck
3import Test.QuickCheck
4import Test.QuickCheck.Batch
4import Test.QuickCheck.Batch
5
5
6−import Char
6+import Data.Char
7
7
8−import Text
8+import Data.Text
9−import Text.Internal
9+import Data.Text.Internal
10
10
11instance Arbitrary Char where
11instance Arbitrary Char where
12 arbitrary = oneof [choose ('\0','\55295'), choose ('\57334','\1114111')]
12 arbitrary = oneof [choose ('\0','\55295'), choose ('\57334','\1114111')]
@@ -14,4 +14,4 @@ instance Arbitrary Char where
14
14
15instance Arbitrary Text where
15instance Arbitrary Text where
16 arbitrary = pack `fmap` arbitrary
16 arbitrary = pack `fmap` arbitrary
17− coarbitrary s = coarbitrary (unpack s)
17+ coarbitrary s = coarbitrary (unpack s)