summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Text/Hakyll/Util.hs3
-rw-r--r--tests/Tests.hs6
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)