on master help sign in
Add some tests for Hakyll.Core.Util.String
e1fa778Jasper Van der Jeugt
tests/Hakyll/Core/Util/String/Tests.hsnew file+28
@@ -0,0 +1,28 @@
1+module Hakyll.Core.Util.String.Tests
2+ ( tests
3+ ) where
4+
5+import Test.Framework (Test)
6+import Test.HUnit ((@=?))
7+
8+import Hakyll.Core.Util.String
9+import TestSuite.Util
10+
11+tests :: [Test]
12+tests = concat
13+ [ fromAssertions "trim"
14+ [ "foo" @=? trim " foo\n\t "
15+ ]
16+
17+ , fromAssertions "replaceAll"
18+ [ "32 & 131" @=? replaceAll "0x[0-9]+" (show . readInt) "0x20 & 0x83"
19+ ]
20+
21+ , fromAssertions "splitAll"
22+ [ ["λ", "∀x.x", "hi"] @=? splitAll ", *" "λ, ∀x.x, hi"
23+ ]
24+ ]
25+
26+ where
27+ readInt :: String -> Int
28+ readInt = read
tests/TestSuite.hs+3
@@ -9,6 +9,7 @@ import qualified Hakyll.Core.Rules.Tests
9import qualified Hakyll.Core.Store.Tests
9import qualified Hakyll.Core.Store.Tests
10import qualified Hakyll.Core.UnixFilter.Tests
10import qualified Hakyll.Core.UnixFilter.Tests
11import qualified Hakyll.Core.Util.Arrow.Tests
11import qualified Hakyll.Core.Util.Arrow.Tests
12+import qualified Hakyll.Core.Util.String.Tests
12import qualified Hakyll.Web.Page.Tests
13import qualified Hakyll.Web.Page.Tests
13import qualified Hakyll.Web.Page.Metadata.Tests
14import qualified Hakyll.Web.Page.Metadata.Tests
14import qualified Hakyll.Web.Template.Tests
15import qualified Hakyll.Web.Template.Tests
@@ -32,6 +33,8 @@ main = defaultMain
32 Hakyll.Core.UnixFilter.Tests.tests
33 Hakyll.Core.UnixFilter.Tests.tests
33 , testGroup "Hakyll.Core.Util.Arrow.Tests"
34 , testGroup "Hakyll.Core.Util.Arrow.Tests"
34 Hakyll.Core.Util.Arrow.Tests.tests
35 Hakyll.Core.Util.Arrow.Tests.tests
36+ , testGroup "Hakyll.Core.Util.String.Tests"
37+ Hakyll.Core.Util.String.Tests.tests
35 , testGroup "Hakyll.Web.Page.Tests"
38 , testGroup "Hakyll.Web.Page.Tests"
36 Hakyll.Web.Page.Tests.tests
39 Hakyll.Web.Page.Tests.tests
37 , testGroup "Hakyll.Web.Page.Metadata.Tests"
40 , testGroup "Hakyll.Web.Page.Metadata.Tests"