diff options
-rw-r--r-- | src/Text/Hakyll/Util.hs | 3 | ||||
-rw-r--r-- | tests/Tests.hs | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/Text/Hakyll/Util.hs b/src/Text/Hakyll/Util.hs index 6076dc4..7dc0ce3 100644 --- a/src/Text/Hakyll/Util.hs +++ b/src/Text/Hakyll/Util.hs @@ -25,4 +25,5 @@ stripHTML str = let (beforeTag, rest) = break (== '<') str -- | Split a list at a certain element. split :: String -> String -> [String] -split pattern = splitRegex (mkRegex pattern) +split pattern = filter (not . null) + . splitRegex (mkRegex pattern) diff --git a/tests/Tests.hs b/tests/Tests.hs index eb1f275..fbb2ce4 100644 --- a/tests/Tests.hs +++ b/tests/Tests.hs @@ -17,6 +17,8 @@ tests = [ testGroup "Util group" [ testProperty "trim length" prop_trim_length , testCase "stripHTML 1" test_strip_html1 , testCase "stripHTML 2" test_strip_html2 , testCase "stripHTML 3" test_strip_html3 + , testCase "split 1" test_split1 + , testCase "split 2" test_split2 ] , testGroup "CompressCSS group" [ testProperty "compressCSS length" prop_compress_css_length @@ -44,6 +46,10 @@ test_strip_html2 = stripHTML "text" @?= "text" test_strip_html3 = stripHTML "<b>Hakyll</b> is an <i>awesome</i> web framework <img src=\"foo.png\" />" @?= "Hakyll is an awesome web framework " +-- Split test cases. +test_split1 = split "," "1,2,3" @?= ["1", "2", "3"] +test_split2 = split "," ",1,2," @?= ["1", "2"] + -- CSS compression should always decrease the text length. prop_compress_css_length str = length str >= length (compressCSS str) |