@@ -74,6 +74,9 @@ prop_minimum = L.minimum `eqEP` T.minimum
74prop_scanl f z = L.scanl f z `eqP` (unpack . T.scanl f z)
74prop_scanl f z = L.scanl f z `eqP` (unpack . T.scanl f z)
75prop_scanl1 f = L.scanl1 f `eqP` (unpack . T.scanl1 f)
75prop_scanl1 f = L.scanl1 f `eqP` (unpack . T.scanl1 f)
77+prop_mapAccumL f z = (snd . L.mapAccumL f z)`eqP` (unpack . T.mapAccumL f z)
78+ where types = f :: Int -> Char -> (Int,Char)
77prop_replicate n = L.replicate n `eq` (unpack . T.replicate n)
80prop_replicate n = L.replicate n `eq` (unpack . T.replicate n)
78prop_unfoldr n = L.unfoldr f `eq` (unpack . T.unfoldr f)
81prop_unfoldr n = L.unfoldr f `eq` (unpack . T.unfoldr f)
79 where f c | fromEnum c * 100 > n = Nothing
82 where f c | fromEnum c * 100 > n = Nothing
@@ -162,6 +165,8 @@ tests = [
162 ("prop_scanl", mytest prop_scanl),
165 ("prop_scanl", mytest prop_scanl),
163 ("prop_scanl1", mytest prop_scanl1),
166 ("prop_scanl1", mytest prop_scanl1),
168+ ("prop_mapAccumL", mytest prop_mapAccumL),
165 ("prop_replicate", mytest prop_replicate),
170 ("prop_replicate", mytest prop_replicate),
166 ("prop_unfoldr", mytest prop_unfoldr),
171 ("prop_unfoldr", mytest prop_unfoldr),
167 ("prop_unfoldrN", mytest prop_unfoldrN),
172 ("prop_unfoldrN", mytest prop_unfoldrN),