TWiki Reader: add basic syntax test
This commit is contained in:
parent
c3780992ab
commit
79f25fb9ce
4 changed files with 399 additions and 0 deletions
|
@ -182,6 +182,7 @@ Extra-Source-Files:
|
|||
tests/epub/*.epub
|
||||
tests/epub/*.native
|
||||
tests/txt2tags.t2t
|
||||
tests/twiki-reader.twiki
|
||||
|
||||
Source-repository head
|
||||
type: git
|
||||
|
|
|
@ -153,6 +153,9 @@ tests = [ testGroup "markdown"
|
|||
, test "formatting" ["-r", "epub", "-w", "native"]
|
||||
"epub/formatting.epub" "epub/formatting.native"
|
||||
]
|
||||
, testGroup "twiki"
|
||||
[ test "reader" ["-r", "twiki", "-w", "native", "-s"]
|
||||
"twiki-reader.twiki" "twiki-reader.native" ]
|
||||
, testGroup "other writers" $ map (\f -> testGroup f $ writerTests f)
|
||||
[ "opendocument" , "context" , "texinfo", "icml"
|
||||
, "man" , "plain" , "rtf", "org", "asciidoc"
|
||||
|
|
174
tests/twiki-reader.native
Normal file
174
tests/twiki-reader.native
Normal file
|
@ -0,0 +1,174 @@
|
|||
Pandoc (Meta {unMeta = fromList []})
|
||||
[Header 1 ("header",[],[]) [Str "header"]
|
||||
,Header 2 ("header-level-two",[],[]) [Str "header",Space,Str "level",Space,Str "two"]
|
||||
,Header 3 ("header-level-3",[],[]) [Str "header",Space,Str "level",Space,Str "3"]
|
||||
,Header 4 ("header-level-four",[],[]) [Str "header",Space,Emph [Str "level"],Space,Str "four"]
|
||||
,Header 5 ("header-level-5",[],[]) [Str "header",Space,Str "level",Space,Str "5"]
|
||||
,Header 6 ("header-level-6",[],[]) [Str "header",Space,Str "level",Space,Str "6"]
|
||||
,Para [Str "---+++++++",Space,Str "not",Space,Str "a",Space,Str "header"]
|
||||
,Para [Str "--++",Space,Str "not",Space,Str "a",Space,Str "header"]
|
||||
,Header 1 ("emph-and-strong",[],[]) [Str "emph",Space,Str "and",Space,Str "strong"]
|
||||
,Para [Emph [Str "emph"],Space,Strong [Str "strong"]]
|
||||
,Para [Emph [Strong [Str "strong",Space,Str "and",Space,Str "emph"]]]
|
||||
,Para [Strong [Emph [Str "emph",Space,Str "inside"],Space,Str "strong"]]
|
||||
,Para [Strong [Str "strong",Space,Str "with",Space,Emph [Str "emph"]]]
|
||||
,Para [Emph [Strong [Str "strong",Space,Str "inside"],Space,Str "emph"]]
|
||||
,Header 1 ("horizontal-rule",[],[]) [Str "horizontal",Space,Str "rule"]
|
||||
,Para [Str "top"]
|
||||
,HorizontalRule
|
||||
,Para [Str "bottom"]
|
||||
,HorizontalRule
|
||||
,Header 1 ("nop",[],[]) [Str "nop"]
|
||||
,Para [Str "_not",Space,Str "emph_"]
|
||||
,Header 1 ("entities",[],[]) [Str "entities"]
|
||||
,Para [Str "hi",Space,Str "&",Space,Str "low"]
|
||||
,Para [Str "hi",Space,Str "&",Space,Str "low"]
|
||||
,Para [Str "G\246del"]
|
||||
,Para [Str "\777\2730"]
|
||||
,Header 1 ("comments",[],[]) [Str "comments"]
|
||||
,Para [Str "inline",Space,Str "comment"]
|
||||
,Para [Str "between",Space,Str "blocks"]
|
||||
,Header 1 ("linebreaks",[],[]) [Str "linebreaks"]
|
||||
,Para [Str "hi",LineBreak,Str "there"]
|
||||
,Para [Str "hi",LineBreak,Space,Str "there"]
|
||||
,Header 1 ("inline-code",[],[]) [Str "inline",Space,Str "code"]
|
||||
,Para [Code ("",[],[]) "*\8594*",Space,Code ("",[],[]) "typed",Space,Code ("",["haskell"],[]) ">>="]
|
||||
,Header 1 ("code-blocks",[],[]) [Str "code",Space,Str "blocks"]
|
||||
,CodeBlock ("",[],[]) "case xs of\n (_:_) -> reverse xs\n [] -> ['*']"
|
||||
,CodeBlock ("",["haskell"],[]) "case xs of\n (_:_) -> reverse xs\n [] -> ['*']"
|
||||
,Header 1 ("block-quotes",[],[]) [Str "block",Space,Str "quotes"]
|
||||
,Para [Str "Regular",Space,Str "paragraph"]
|
||||
,BlockQuote
|
||||
[Para [Str "This",Space,Str "is",Space,Str "a",Space,Str "block",Space,Str "quote."]
|
||||
,Para [Str "With",Space,Str "two",Space,Str "paragraphs."]]
|
||||
,Para [Str "Nother",Space,Str "paragraph."]
|
||||
,Header 1 ("external-links",[],[]) [Str "external",Space,Str "links"]
|
||||
,Para [Link [Emph [Str "Google"],Space,Str "search",Space,Str "engine"] ("http://google.com","")]
|
||||
,Para [Link [Str "http://johnmacfarlane.net/pandoc/"] ("http://johnmacfarlane.net/pandoc/","")]
|
||||
,Para [Link [Str "http://google.com"] ("http://google.com",""),Space,Link [Str "http://yahoo.com"] ("http://yahoo.com","")]
|
||||
,Para [Link [Str "email",Space,Str "me"] ("mailto:info@example.org","")]
|
||||
,Para [Str "http://google.com"]
|
||||
,Para [Str "http://google.com"]
|
||||
,Para [Str "http://google.com"]
|
||||
,Para [Str "info@example.org"]
|
||||
,Para [Str "info@example.org"]
|
||||
,Para [Str "info@example.org"]
|
||||
,Header 1 ("lists",[],[]) [Str "lists"]
|
||||
,BulletList
|
||||
[[Plain [Str "Start",Space,Str "each",Space,Str "line"]]
|
||||
,[Plain [Str "with",Space,Str "an",Space,Str "asterisk",Space,Str "(*)."]
|
||||
,BulletList
|
||||
[[Plain [Str "More",Space,Str "asterisks",Space,Str "gives",Space,Str "deeper"]
|
||||
,BulletList
|
||||
[[Plain [Str "and",Space,Str "deeper",Space,Str "levels."]]]]]]
|
||||
,[Plain [Str "Line",Space,Str "breaks",LineBreak,Str "don't",Space,Str "break",Space,Str "levels."]]
|
||||
,[Plain [Str "Continuations",Space,Str "are",Space,Str "also",Space,Str "possible"]
|
||||
,BulletList
|
||||
[[Plain [Str "and",Space,Str "do",Space,Str "not",Space,Str "break",Space,Str "the",Space,Str "list",Space,Str "flow"]]]]
|
||||
,[Plain [Str "Level",Space,Str "one"]]]
|
||||
,Para [Str "Any",Space,Str "other",Space,Str "start",Space,Str "ends",Space,Str "the",Space,Str "list."]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "Start",Space,Str "each",Space,Str "line"]]
|
||||
,[Plain [Str "with",Space,Str "a",Space,Str "number",Space,Str "(1.)."]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "More",Space,Str "number",Space,Str "signs",Space,Str "gives",Space,Str "deeper"]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "and",Space,Str "deeper"]]
|
||||
,[Plain [Str "levels."]]]]]]
|
||||
,[Plain [Str "Line",Space,Str "breaks",LineBreak,Str "don't",Space,Str "break",Space,Str "levels."]]
|
||||
,[Plain [Str "Blank",Space,Str "lines"]]]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "end",Space,Str "the",Space,Str "list",Space,Str "and",Space,Str "start",Space,Str "another."]]]
|
||||
,Para [Str "Any",Space,Str "other",Space,Str "start",Space,Str "also",Space,Str "ends",Space,Str "the",Space,Str "list."]
|
||||
,DefinitionList
|
||||
[([Str "item",Space,Str "1"],
|
||||
[[Plain [Str "definition",Space,Str "1"]]])
|
||||
,([Str "item",Space,Str "2"],
|
||||
[[Plain [Str "definition",Space,Str "2-1",Space,Str "definition",Space,Str "2-2"]]])
|
||||
,([Str "item",Space,Emph [Str "3"]],
|
||||
[[Plain [Str "definition",Space,Emph [Str "3"]]]])]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "one"]]
|
||||
,[Plain [Str "two"]
|
||||
,BulletList
|
||||
[[Plain [Str "two",Space,Str "point",Space,Str "one"]]
|
||||
,[Plain [Str "two",Space,Str "point",Space,Str "two"]]]]
|
||||
,[Plain [Str "three"]
|
||||
,DefinitionList
|
||||
[([Str "three",Space,Str "item",Space,Str "one"],
|
||||
[[Plain [Str "three",Space,Str "def",Space,Str "one"]]])]]
|
||||
,[Plain [Str "four"]
|
||||
,DefinitionList
|
||||
[([Str "four",Space,Str "def",Space,Str "one"],
|
||||
[[Plain [Str "this",Space,Str "is",Space,Str "a",Space,Str "continuation"]]])]]
|
||||
,[Plain [Str "five"]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "five",Space,Str "sub",Space,Str "1"]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "five",Space,Str "sub",Space,Str "1",Space,Str "sub",Space,Str "1"]]]]
|
||||
,[Plain [Str "five",Space,Str "sub",Space,Str "2"]]]]]
|
||||
,OrderedList (1,DefaultStyle,DefaultDelim)
|
||||
[[Plain [Str "other"]
|
||||
,OrderedList (1,UpperRoman,DefaultDelim)
|
||||
[[Plain [Str "list"]]
|
||||
,[Plain [Str "styles"]]]]
|
||||
,[Plain [Str "are"]
|
||||
,OrderedList (1,LowerRoman,DefaultDelim)
|
||||
[[Plain [Str "also"]]
|
||||
,[Plain [Str "possible"]]]]
|
||||
,[Plain [Str "all"]
|
||||
,OrderedList (1,LowerAlpha,DefaultDelim)
|
||||
[[Plain [Str "the"]]
|
||||
,[Plain [Str "different"]]
|
||||
,[Plain [Str "styles"]]]]
|
||||
,[Plain [Str "are"]
|
||||
,OrderedList (1,UpperAlpha,DefaultDelim)
|
||||
[[Plain [Str "implemented"]]
|
||||
,[Plain [Str "and"]]
|
||||
,[Plain [Str "supported"]]]]]
|
||||
,Header 1 ("tables",[],[]) [Str "tables"]
|
||||
,Table [] [AlignDefault,AlignDefault] [0.0,0.0]
|
||||
[[]
|
||||
,[]]
|
||||
[[[Plain [Str "Orange"]]
|
||||
,[Plain [Str "Apple"]]]
|
||||
,[[Plain [Str "Bread"]]
|
||||
,[Plain [Str "Pie"]]]
|
||||
,[[Plain [Str "Butter"]]
|
||||
,[Plain [Str "Ice",Space,Str "cream"]]]]
|
||||
,Table [] [AlignLeft,AlignLeft] [0.0,0.0]
|
||||
[[Plain [Str "Orange"]]
|
||||
,[Plain [Str "Apple"]]]
|
||||
[[[Plain [Str "Bread"]]
|
||||
,[Plain [Str "Pie"]]]
|
||||
,[[Plain [Strong [Str "Butter"]]]
|
||||
,[Plain [Str "Ice",Space,Str "cream"]]]]
|
||||
,Table [] [AlignLeft,AlignLeft] [0.0,0.0]
|
||||
[[Plain [Str "Orange"]]
|
||||
,[Plain [Str "Apple"]]]
|
||||
[[[Plain [Str "Bread",LineBreak,LineBreak,Str "and",Space,Str "cheese"]]
|
||||
,[Plain [Str "Pie",LineBreak,LineBreak,Strong [Str "apple"],Space,Str "and",Space,Emph [Str "carrot"]]]]]
|
||||
,Table [] [AlignDefault,AlignDefault,AlignDefault] [0.0,0.0,0.0]
|
||||
[[]
|
||||
,[]
|
||||
,[]]
|
||||
[[[Plain [Str "Orange"]]
|
||||
,[Plain [Str "Apple"]]
|
||||
,[Plain [Str "more"]]]
|
||||
,[[Plain [Str "Bread"]]
|
||||
,[Plain [Str "Pie"]]
|
||||
,[Plain [Str "more"]]]
|
||||
,[[Plain [Str "Butter"]]
|
||||
,[Plain [Str "Ice",Space,Str "cream"]]
|
||||
,[Plain [Str "and",Space,Str "more"]]]]
|
||||
,Header 1 ("macros",[],[]) [Str "macros"]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[]) []]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[]) [Str ""]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[]) [Str "content with spaces"]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[]) [Str "content with spaces"]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[("ARG1","test")]) [Str "content with spaces"]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[]) [Str "content with spaces ARG1=test"]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[("ARG1","test")]) [Str "content with spaces"]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[("ARG1","test"),("ARG2","test2")]) [Str ""]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[("ARG1","test"),("ARG2","test2")]) [Str ""]]
|
||||
,Para [Span ("",["twiki-macro","TEST"],[("ARG1","test"),("ARG2","test2")]) [Str "multiline\ndoes also work"]]]
|
221
tests/twiki-reader.twiki
Normal file
221
tests/twiki-reader.twiki
Normal file
|
@ -0,0 +1,221 @@
|
|||
---+ header
|
||||
|
||||
---++ header level two
|
||||
|
||||
---+++ header level 3
|
||||
|
||||
---++++ header _level_ four
|
||||
|
||||
---+++++ header level 5
|
||||
|
||||
---++++++ header level 6
|
||||
|
||||
---+++++++ not a header
|
||||
|
||||
--++ not a header
|
||||
|
||||
---+ emph and strong
|
||||
|
||||
_emph_ *strong*
|
||||
|
||||
__strong and emph__
|
||||
|
||||
*<i>emph inside</i> strong*
|
||||
|
||||
*strong with <i>emph</i>*
|
||||
|
||||
_<b>strong inside</b> emph_
|
||||
|
||||
---+ horizontal rule
|
||||
|
||||
top
|
||||
---
|
||||
bottom
|
||||
|
||||
---
|
||||
|
||||
---+ nop
|
||||
|
||||
<nop>_not emph_
|
||||
|
||||
---+ entities
|
||||
|
||||
hi & low
|
||||
|
||||
hi & low
|
||||
|
||||
Gödel
|
||||
|
||||
̉પ
|
||||
|
||||
---+ comments
|
||||
|
||||
inline <!-- secret --> comment
|
||||
|
||||
<!-- secret -->
|
||||
|
||||
between blocks
|
||||
|
||||
<!-- secret -->
|
||||
|
||||
---+ linebreaks
|
||||
|
||||
hi%BR%there
|
||||
|
||||
hi%BR%
|
||||
there
|
||||
|
||||
---+ inline code
|
||||
|
||||
<code>*→*</code> =typed= <code class="haskell">>>=</code>
|
||||
|
||||
---+ code blocks
|
||||
|
||||
<verbatim>
|
||||
case xs of
|
||||
(_:_) -> reverse xs
|
||||
[] -> ['*']
|
||||
</verbatim>
|
||||
|
||||
<verbatim class="haskell">
|
||||
case xs of
|
||||
(_:_) -> reverse xs
|
||||
[] -> ['*']
|
||||
</verbatim>
|
||||
|
||||
---+ block quotes
|
||||
|
||||
Regular paragraph
|
||||
<blockquote>
|
||||
This is a block quote.
|
||||
|
||||
With two paragraphs.
|
||||
</blockquote>
|
||||
Nother paragraph.
|
||||
|
||||
---+ external links
|
||||
|
||||
[[http://google.com][<i>Google</i> search engine]]
|
||||
|
||||
http://johnmacfarlane.net/pandoc/
|
||||
|
||||
[[http://google.com]] [[http://yahoo.com]]
|
||||
|
||||
[[mailto:info@example.org][email me]]
|
||||
|
||||
!http://google.com
|
||||
|
||||
<nop>http://google.com
|
||||
|
||||
<noautolink>
|
||||
http://google.com
|
||||
</noautolink>
|
||||
|
||||
!info@example.org
|
||||
|
||||
<nop>info@example.org
|
||||
|
||||
<noautolink>
|
||||
info@example.org
|
||||
</noautolink>
|
||||
|
||||
---+ lists
|
||||
|
||||
* Start each line
|
||||
* with an asterisk (*).
|
||||
* More asterisks gives deeper
|
||||
* and deeper levels.
|
||||
* Line breaks%BR%don't break levels.
|
||||
* Continuations
|
||||
are also possible
|
||||
* and do not break the list flow
|
||||
* Level one
|
||||
Any other start ends the list.
|
||||
|
||||
1. Start each line
|
||||
1. with a number (1.).
|
||||
1. More number signs gives deeper
|
||||
1. and deeper
|
||||
1. levels.
|
||||
1. Line breaks%BR%don't break levels.
|
||||
1. Blank lines
|
||||
|
||||
1. end the list and start another.
|
||||
Any other start also
|
||||
ends the list.
|
||||
|
||||
$ item 1: definition 1
|
||||
$ item 2: definition 2-1
|
||||
definition 2-2
|
||||
$ item _3_: definition _3_
|
||||
|
||||
1. one
|
||||
1. two
|
||||
* two point one
|
||||
* two point two
|
||||
1. three
|
||||
$ three item one: three def one
|
||||
1. four
|
||||
$ four def one: this
|
||||
is a continuation
|
||||
1. five
|
||||
1. five sub 1
|
||||
1. five sub 1 sub 1
|
||||
1. five sub 2
|
||||
|
||||
1. other
|
||||
I. list
|
||||
I. styles
|
||||
1. are
|
||||
i. also
|
||||
i. possible
|
||||
1. all
|
||||
a. the
|
||||
a. different
|
||||
a. styles
|
||||
1. are
|
||||
A. implemented
|
||||
A. and
|
||||
A. supported
|
||||
|
||||
---+ tables
|
||||
|
||||
|Orange|Apple|
|
||||
|Bread|Pie|
|
||||
|Butter|Ice cream|
|
||||
|
||||
|*Orange*|*Apple*|
|
||||
|Bread|Pie|
|
||||
|*Butter*|Ice cream|
|
||||
|
||||
|*Orange*|*Apple*|
|
||||
|Bread%BR%%BR%and cheese|Pie%BR%%BR%*apple* and <i>carrot</i>|
|
||||
|
||||
| Orange | Apple | more |
|
||||
| Bread | Pie | more |
|
||||
| Butter | Ice cream | and more |
|
||||
|
||||
---+ macros
|
||||
|
||||
%TEST%
|
||||
|
||||
%TEST{}%
|
||||
|
||||
%TEST{content with spaces}%
|
||||
|
||||
%TEST{"content with spaces"}%
|
||||
|
||||
%TEST{"content with spaces" ARG1="test"}%
|
||||
|
||||
%TEST{content with spaces ARG1=test}%
|
||||
|
||||
%TEST{ARG1=test content with spaces}%
|
||||
|
||||
%TEST{ARG1=test ARG2=test2}%
|
||||
|
||||
%TEST{ARG1="test" ARG2="test2"}%
|
||||
|
||||
%TEST{ARG1="test"
|
||||
ARG2="test2"
|
||||
multiline
|
||||
does also work}%
|
Loading…
Reference in a new issue