1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/tests/test1.txt Wed May 03 16:27:07 2017 +0200
1.3 @@ -0,0 +1,9 @@
1.4 +Hello
1.5 +{{{{#!wiki
1.6 +A region
1.7 + {{{
1.8 +Another
1.9 +}}}
1.10 +End
1.11 +}}}}
1.12 +XXX
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
2.2 +++ b/tests/test10.txt Wed May 03 16:27:07 2017 +0200
2.3 @@ -0,0 +1,9 @@
2.4 += Level 1 =
2.5 +Text
2.6 + == Level 2 Heading ==
2.7 +Text
2.8 +Not == a heading ==
2.9 +== Not a heading == either
2.10 += Mismatched heading ==
2.11 +== Another mismatched heading =
2.12 +=== Heading __Underlined__ ===
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2 +++ b/tests/test11.txt Wed May 03 16:27:07 2017 +0200
3.3 @@ -0,0 +1,15 @@
3.4 +''Some'' emphasised text. ''Emphasised''''text''.
3.5 +
3.6 +'''Strong ''and italic'' text.'''
3.7 +
3.8 +''Italic and '''strong'''''. '''''Both'', strong'''. '''''Both''', italic''.
3.9 +
3.10 +'''Strong''''''text'''.
3.11 +
3.12 +Some `monospace` text. `Mono, '''strong'''`, __underlined__, __''under''lined__.
3.13 +
3.14 +H,,2,,O + CO,,2,,
3.15 +
3.16 +== e = mc^2^ ==
3.17 +
3.18 +~+Larger...+~ and ~-smaller-~
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/tests/test12.txt Wed May 03 16:27:07 2017 +0200
4.3 @@ -0,0 +1,7 @@
4.4 +||<20%|2-2)^> Cell 1 || Cell 2 ||
4.5 +|| Cell 3 ||<#FF0000 width="15%"> Cell 4 ||
4.6 +
4.7 +|| Not a table
4.8 + || Also not a table
4.9 +|| Almost a table || ...
4.10 +|| A table, trailing space ||
5.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
5.2 +++ b/tests/test2.txt Wed May 03 16:27:07 2017 +0200
5.3 @@ -0,0 +1,7 @@
5.4 +XXX
5.5 + * Item 1
5.6 + * Item 1.1
5.7 + * Item 2
5.8 + . Item 3
5.9 + . Item 3.1
5.10 +XXX
6.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
6.2 +++ b/tests/test3.txt Wed May 03 16:27:07 2017 +0200
6.3 @@ -0,0 +1,5 @@
6.4 +XXX
6.5 + a. Appendix
6.6 +
6.7 + i. Romanus eunt domus!
6.8 + I. What did they do for us?
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
7.2 +++ b/tests/test4.txt Wed May 03 16:27:07 2017 +0200
7.3 @@ -0,0 +1,5 @@
7.4 + term:: item
7.5 +not a term:: nor an item
7.6 + term::
7.7 + :: item
7.8 + ::non-item
8.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
8.2 +++ b/tests/test5.txt Wed May 03 16:27:07 2017 +0200
8.3 @@ -0,0 +1,9 @@
8.4 +Hello
8.5 +{{{{#!xxx
8.6 +A region
8.7 +{{{
8.8 +Another
8.9 +}}}
8.10 +End
8.11 +}}}}
8.12 +XXX
9.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
9.2 +++ b/tests/test6.txt Wed May 03 16:27:07 2017 +0200
9.3 @@ -0,0 +1,7 @@
9.4 +Hello
9.5 +{{{{
9.6 +Start
9.7 +}}}
9.8 +Still in region
9.9 +}}}}
9.10 +End
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
10.2 +++ b/tests/test7.txt Wed May 03 16:27:07 2017 +0200
10.3 @@ -0,0 +1,1 @@
10.4 +Hello {{{world}}} again
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
11.2 +++ b/tests/test8.txt Wed May 03 16:27:07 2017 +0200
11.3 @@ -0,0 +1,3 @@
11.4 +XXX
11.5 +
11.6 +YYY
12.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
12.2 +++ b/tests/test9.txt Wed May 03 16:27:07 2017 +0200
12.3 @@ -0,0 +1,6 @@
12.4 +XXX
12.5 +----
12.6 +YYY
12.7 + ----still a rule
12.8 +also still a rule----
12.9 +EOF
13.1 --- a/tests/test_parser.py Wed May 03 00:32:46 2017 +0200
13.2 +++ b/tests/test_parser.py Wed May 03 16:27:07 2017 +0200
13.3 @@ -2,144 +2,38 @@
13.4
13.5 from moinformat import parse
13.6 from moinformat.serialisers import serialise, HTMLSerialiser
13.7 -
13.8 -sl = []
13.9 -
13.10 -sl.append("""\
13.11 -Hello
13.12 -{{{{#!wiki
13.13 -A region
13.14 - {{{
13.15 -Another
13.16 -}}}
13.17 -End
13.18 -}}}}
13.19 -XXX
13.20 -""")
13.21 -
13.22 -sl.append("""\
13.23 -XXX
13.24 - * Item 1
13.25 - * Item 1.1
13.26 - * Item 2
13.27 - . Item 3
13.28 - . Item 3.1
13.29 -XXX
13.30 -""")
13.31 -
13.32 -sl.append("""\
13.33 -XXX
13.34 - a. Appendix
13.35 -
13.36 - i. Romanus eunt domus!
13.37 - I. What did they do for us?
13.38 -""")
13.39 +from glob import glob
13.40 +from os.path import join, split
13.41 +import sys
13.42
13.43 -sl.append("""\
13.44 - term:: item
13.45 -not a term:: nor an item
13.46 - term::
13.47 - :: item
13.48 - ::non-item
13.49 -""")
13.50 +dirname = split(sys.argv[0])[0]
13.51
13.52 -sl.append("""\
13.53 -Hello
13.54 -{{{{#!xxx
13.55 -A region
13.56 -{{{
13.57 -Another
13.58 -}}}
13.59 -End
13.60 -}}}}
13.61 -XXX
13.62 -""")
13.63 -
13.64 -sl.append("""\
13.65 -Hello
13.66 -{{{{
13.67 -Start
13.68 -}}}
13.69 -Still in region
13.70 -}}}}
13.71 -End
13.72 -""")
13.73 -
13.74 -sl.append("""\
13.75 -Hello {{{world}}} again""")
13.76 -
13.77 -sl.append("""\
13.78 -XXX
13.79 +def test_input(s):
13.80 + d = parse(s)
13.81 + o = serialise(d)
13.82
13.83 -YYY""")
13.84 -
13.85 -sl.append("""\
13.86 -XXX
13.87 -----
13.88 -YYY
13.89 - ----still a rule
13.90 -also still a rule----
13.91 -EOF""")
13.92 -
13.93 -sl.append("""\
13.94 -= Level 1 =
13.95 -Text
13.96 - == Level 2 Heading ==
13.97 -Text
13.98 -Not == a heading ==
13.99 -== Not a heading == either
13.100 -= Mismatched heading ==
13.101 -== Another mismatched heading =
13.102 -=== Heading __Underlined__ ===
13.103 -""")
13.104 -
13.105 -sl.append("""\
13.106 -''Some'' emphasised text. ''Emphasised''''text''.
13.107 -
13.108 -'''Strong ''and italic'' text.'''
13.109 -
13.110 -''Italic and '''strong'''''. '''''Both'', strong'''. '''''Both''', italic''.
13.111 -
13.112 -'''Strong''''''text'''.
13.113 -
13.114 -Some `monospace` text. `Mono, '''strong'''`, __underlined__, __''under''lined__.
13.115 -
13.116 -H,,2,,O + CO,,2,,
13.117 + print o == s
13.118 + print "-" * 60
13.119 + print o
13.120 + if o != s:
13.121 + print "-" * 60
13.122 + print s
13.123 + print "-" * 60
13.124 + print serialise(d, HTMLSerialiser)
13.125 + print "-" * 60
13.126 + print d.prettyprint()
13.127 + print
13.128
13.129 -== e = mc^2^ ==
13.130 -
13.131 -~+Larger...+~ and ~-smaller-~
13.132 -""")
13.133 -
13.134 -sl.append("""\
13.135 -||<20%|2-2)^> Cell 1 || Cell 2 ||
13.136 -|| Cell 3 ||<#FF0000 width="15%"> Cell 4 ||
13.137 -
13.138 -|| Not a table
13.139 - || Also not a table
13.140 -|| Almost a table || ...
13.141 -|| A table, trailing space ||
13.142 -""")
13.143 -
13.144 -dl = map(parse, sl)
13.145 -nl = map(serialise, dl)
13.146 +if __name__ == "__main__":
13.147 + filenames = sys.argv[1:] or glob(join(dirname, "test*.txt"))
13.148 + filenames.sort()
13.149
13.150 -for s, n in zip(sl, nl):
13.151 - print n == s
13.152 - print "----"
13.153 - print n
13.154 - print "----"
13.155 -
13.156 -for d in dl:
13.157 - print
13.158 - print "----"
13.159 - print serialise(d, HTMLSerialiser)
13.160 - print "----"
13.161 -
13.162 -for d in dl:
13.163 - print
13.164 - print "----"
13.165 - print d.prettyprint()
13.166 - print "----"
13.167 + for filename in filenames:
13.168 + f = open(filename)
13.169 + try:
13.170 + print filename
13.171 + test_input(f.read())
13.172 + finally:
13.173 + f.close()
13.174
13.175 # vim: tabstop=4 expandtab shiftwidth=4