on master help sign in
Basic tests for case conversion functions.

--HG-- extra : convert_revision : 91001ea22447482e762f2c42be45959e2571517c

commit0809f18e4167a6ea0df33299035f8a24df3c76ae authorBryan O'Sullivan <bos@serpentine.com> dateWed 8 Jul 2009, 04:38 (17 years ago) parent283b47d
1 file changed+19−6
tests/Properties.hs+19−6
tests/Properties.hs+19−6
@@ -185,22 +185,29 @@ split pat src0
185185 | pat `L.isPrefixOf` s = take n src : go (drop l s)
186186 | otherwise = search (n+1) s'
187187
188+prop_T_toCaseFold_length t = T.length (T.toCaseFold t) >= T.length t
189+prop_T_toLower_length t = T.length (T.toLower t) >= T.length t
190+prop_T_toLower_lower t = p (T.toLower t) >= p t
191+ where p = T.length . T.filter isLower
192+prop_T_toUpper_length t = T.length (T.toUpper t) >= T.length t
193+prop_T_toUpper_upper t = p (T.toUpper t) >= p t
194+ where p = T.length . T.filter isUpper
188195prop_T_foldl f z = L.foldl f z `eqP` (T.foldl f z)
189− where types = f :: Char -> Char -> Char
196+ where types = f :: Char -> Char -> Char
190197prop_TL_foldl f z = L.foldl f z `eqP` (TL.foldl f z)
191− where types = f :: Char -> Char -> Char
198+ where types = f :: Char -> Char -> Char
192199prop_T_foldl' f z = L.foldl' f z `eqP` T.foldl' f z
193− where types = f :: Char -> Char -> Char
200+ where types = f :: Char -> Char -> Char
194201prop_TL_foldl' f z = L.foldl' f z `eqP` TL.foldl' f z
195− where types = f :: Char -> Char -> Char
202+ where types = f :: Char -> Char -> Char
196203prop_T_foldl1 f = L.foldl1 f `eqEP` T.foldl1 f
197204prop_TL_foldl1 f = L.foldl1 f `eqEP` TL.foldl1 f
198205prop_T_foldl1' f = L.foldl1' f `eqEP` T.foldl1' f
199206prop_TL_foldl1' f = L.foldl1' f `eqEP` TL.foldl1' f
200207prop_T_foldr f z = L.foldr f z `eqP` T.foldr f z
201− where types = f :: Char -> Char -> Char
208+ where types = f :: Char -> Char -> Char
202209prop_TL_foldr f z = L.foldr f z `eqP` TL.foldr f z
203− where types = f :: Char -> Char -> Char
210+ where types = f :: Char -> Char -> Char
204211prop_T_foldr1 f = L.foldr1 f `eqEP` T.foldr1 f
205212prop_TL_foldr1 f = L.foldr1 f `eqEP` TL.foldr1 f
206213
@@ -460,6 +467,12 @@ tests = [
460467 ("prop_T_reverse_short", mytest prop_T_reverse_short),
461468 ("prop_T_replace", mytest prop_T_replace),
462469
470+ ("prop_T_toCaseFold_length", mytest prop_T_toCaseFold_length),
471+ ("prop_T_toLower_length", mytest prop_T_toLower_length),
472+ ("prop_T_toLower_lower", mytest prop_T_toLower_lower),
473+ ("prop_T_toUpper_length", mytest prop_T_toUpper_length),
474+ ("prop_T_toUpper_upper", mytest prop_T_toUpper_upper),
475+
463476 ("prop_T_foldl", mytest prop_T_foldl),
464477 ("prop_TL_foldl", mytest prop_TL_foldl),
465478 ("prop_T_foldl'", mytest prop_T_foldl'),