git.iko.soy/typeable/pandoc
on master help sign in
Added HTML writer tests for inline code.
commit3b5dbe6fdb3888b263a52e001918b0e97789a38c authorJohn MacFarlane <jgm@berkeley.edu> dateSat 29 Jan 2011, 16:26 (16 years ago) parent22969c1
3 files changed+44
pandoc.cabal+1 src/Tests/Writers/HTML.hs+41 src/test-pandoc.hs+2
pandoc.cabal+1
@@ -361,3 +361,4 @@ Executable test-pandoc
361361 Tests.Readers.RST
362362 Tests.Writers.Native
363363 Tests.Writers.ConTeXt
364+ Tests.Writers.HTML
src/Tests/Writers/HTML.hsnew file+41
@@ -0,0 +1,41 @@
1+{-# LANGUAGE OverloadedStrings, QuasiQuotes #-}
2+module Tests.Writers.HTML (tests) where
3+
4+import Test.Framework
5+import Text.Pandoc.Builder
6+import Text.Pandoc
7+import Tests.Helpers
8+import Tests.Arbitrary()
9+import Text.Pandoc.Highlighting (languages) -- null if no hl support
10+
11+html :: (ToString a, ToPandoc a) => a -> String
12+html = writeHtmlString defaultWriterOptions{ writerWrapText = False } . toPandoc
13+
14+{-
15+ "my test" =: X =?> Y
16+
17+is shorthand for
18+
19+ test html "my test" $ X =?> Y
20+
21+which is in turn shorthand for
22+
23+ test html "my test" (X,Y)
24+-}
25+
26+infix 5 =:
27+(=:) :: (ToString a, ToPandoc a)
28+ => String -> (a, String) -> Test
29+(=:) = test html
30+
31+tests :: [Test]
32+tests = [ testGroup "inline code"
33+ [ "basic" =: code "@&" =?> "<code>@&amp;</code>"
34+ , "haskell" =: codeWith ("",["haskell"],[]) ">>="
35+ =?> if null languages
36+ then "<code class=\"haskell\">&gt;&gt;=</code>"
37+ else "<code class=\"sourceCode haskell\"><span class=\"fu\">&gt;&gt;=</span></code>"
38+ , "nolanguage" =: codeWith ("",["nolanguage"],[]) ">>="
39+ =?> "<code class=\"nolanguage\">&gt;&gt;=</code>"
40+ ]
41+ ]
src/test-pandoc.hs+2
@@ -9,6 +9,7 @@ import qualified Tests.Readers.LaTeX
99import qualified Tests.Readers.Markdown
1010import qualified Tests.Readers.RST
1111import qualified Tests.Writers.ConTeXt
12+import qualified Tests.Writers.HTML
1213import qualified Tests.Writers.Native
1314import qualified Tests.Shared
1415
@@ -18,6 +19,7 @@ tests = [ testGroup "Old" Tests.Old.tests
1819 , testGroup "Writers"
1920 [ testGroup "Native" Tests.Writers.Native.tests
2021 , testGroup "ConTeXt" Tests.Writers.ConTeXt.tests
22+ , testGroup "HTML" Tests.Writers.HTML.tests
2123 ]
2224 , testGroup "Readers"
2325 [ testGroup "LaTeX" Tests.Readers.LaTeX.tests