aboutsummaryrefslogtreecommitdiff
path: root/test/Tests/Readers/Man.hs
blob: 4807095a5b208a8f9b9c03f932c4ca216118eb2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{-# LANGUAGE OverloadedStrings #-}
module Tests.Readers.Man (tests) where

import Prelude
import Data.Text (Text)
import Test.Tasty
import Tests.Helpers
import Text.Pandoc
import Text.Pandoc.Arbitrary ()
import Text.Pandoc.Builder
import Text.Pandoc.Readers.Man

man :: Text -> Pandoc
man = purely $ readMan def

infix 4 =:
(=:) :: ToString c
     => String -> (Text, c) -> TestTree
(=:) = test man

tests :: [TestTree]
tests = [
  -- .SH "HEllo bbb" "aaa"" as"
  testGroup "Macros" [
          "Bold" =:
          ".B foo"
          =?> (para $ strong "foo")
        , "Italic" =:
          ".I bar\n"
          =?> (para $ emph "bar")
        , "BoldItalic" =:
          ".BI foo bar"
          =?> (para $ strong $ emph $ str "foo bar")
        , "H1" =:
          ".SH The header\n"
          =?> header 2 (str "The header")
        , "H2" =:
          ".SS The header 2"
          =?> header 3 (str "The header 2")
        , "Macro args" =:
          ".B \"single arg with \"\"Q\"\"\""
          =?> (para $ strong $ str "single arg with \"Q\"")
        ]
  ]