1-- Do not edit! Automatically created with doctest-extract from src/Data/List/Reverse/StrictElement.hs 2{-# LINE 15 "src/Data/List/Reverse/StrictElement.hs" #-} 3 4module DocTest.Data.List.Reverse.StrictElement where 5 6import Data.List.Reverse.StrictElement 7import qualified Test.DocTest.Driver as DocTest 8 9{-# LINE 16 "src/Data/List/Reverse/StrictElement.hs" #-} 10import Test.Utility (forAllPredicates, defined) 11import qualified Data.List.Reverse.StrictElement as Rev 12import qualified Data.List.Match as Match 13import qualified Data.List as List 14import Data.Tuple.HT (mapPair, swap) 15 16_suppressUnusedImportWarning :: (a -> Bool) -> [a] -> [a] 17_suppressUnusedImportWarning = Data.List.Reverse.StrictElement.dropWhile 18 19test :: DocTest.T () 20test = do 21 DocTest.printPrefix "Data.List.Reverse.StrictElement:31: " 22{-# LINE 31 "src/Data/List/Reverse/StrictElement.hs" #-} 23 DocTest.property 24{-# LINE 31 "src/Data/List/Reverse/StrictElement.hs" #-} 25 (forAllPredicates $ \p xs -> Rev.dropWhile p xs == reverse (List.dropWhile p (reverse xs))) 26 DocTest.printPrefix "Data.List.Reverse.StrictElement:32: " 27{-# LINE 32 "src/Data/List/Reverse/StrictElement.hs" #-} 28 DocTest.property 29{-# LINE 32 "src/Data/List/Reverse/StrictElement.hs" #-} 30 (\x xs pad -> defined $ Match.take (pad::[()]) $ Rev.dropWhile ((x::Char)/=) $ cycle $ x:xs) 31 DocTest.printPrefix "Data.List.Reverse.StrictElement:41: " 32{-# LINE 41 "src/Data/List/Reverse/StrictElement.hs" #-} 33 DocTest.property 34{-# LINE 41 "src/Data/List/Reverse/StrictElement.hs" #-} 35 (forAllPredicates $ \p xs -> Rev.takeWhile p xs == reverse (List.takeWhile p (reverse xs))) 36 DocTest.printPrefix "Data.List.Reverse.StrictElement:52: " 37{-# LINE 52 "src/Data/List/Reverse/StrictElement.hs" #-} 38 DocTest.property 39{-# LINE 52 "src/Data/List/Reverse/StrictElement.hs" #-} 40 (forAllPredicates $ \p xs -> Rev.span p xs == swap (mapPair (reverse, reverse) (List.span p (reverse xs)))) 41 DocTest.printPrefix "Data.List.Reverse.StrictElement:53: " 42{-# LINE 53 "src/Data/List/Reverse/StrictElement.hs" #-} 43 DocTest.property 44{-# LINE 53 "src/Data/List/Reverse/StrictElement.hs" #-} 45 (forAllPredicates $ \p xs -> Rev.span p xs == (Rev.dropWhile p xs, Rev.takeWhile p xs)) 46 DocTest.printPrefix "Data.List.Reverse.StrictElement:54: " 47{-# LINE 54 "src/Data/List/Reverse/StrictElement.hs" #-} 48 DocTest.property 49{-# LINE 54 "src/Data/List/Reverse/StrictElement.hs" #-} 50 (\x xs pad -> defined $ Match.take (pad::[()]) $ fst $ Rev.span ((x::Char)/=) $ cycle $ x:xs) 51