trac-wiki 0.2.24 → 0.3.10

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,4 @@
1
1
  require 'pp'
2
- require 'sanitize'
3
2
  module TracWiki
4
3
 
5
4
  class RawHtml
@@ -111,10 +110,6 @@ module TracWiki
111
110
 
112
111
  def to_html
113
112
  ret = tree_to_html(@root)
114
- #print "bf san:", ret, "\n"
115
- #ret = Sanitize.clean(ret, san_conf)
116
- #print "af san:", ret, "\n"
117
- #ret + "\n"
118
113
  ret
119
114
  end
120
115
  def tree_to_html(node)
@@ -144,7 +139,7 @@ module TracWiki
144
139
  end
145
140
 
146
141
 
147
- TAGS_APPEND_NL = [:div, :p, :li, :ol, :ul, :dl, :table, :tr, :td ]
142
+ TAGS_APPEND_NL = [:div, :p, :li, :ol, :ul, :dl, :table, :tr, :td , :th]
148
143
  TAGS_FORCE_PAIR = [:a, :td, :h1, :h2, :h3, :h4, :h5, :h6, :div, :script]
149
144
  TAGS_ALLOVED = [:a,
150
145
  :h1, :h2, :h3, :h4, :h5, :h6,
@@ -164,7 +159,7 @@ module TracWiki
164
159
  :img => [:src, :width, :height, :align, :valign, :style, :alt, :title],
165
160
  :td => [:colspan, :rowspan, :style],
166
161
  :th => [:colspan, :rowspan, :style],
167
- :_all => [:class, :id],
162
+ :_all => [:class, :title, :id],
168
163
  }
169
164
 
170
165
  ATTRIBUTE_STYLE_REX = /\A( text-align:(center|right|left) |
@@ -199,25 +194,25 @@ module TracWiki
199
194
  end.join('')
200
195
  end
201
196
 
202
- def san_conf
203
- return @san_conf if @san_conf
204
- conf = { elements: ['tt', 'form', 'input', 'span', 'div'],
205
- output: :xhtml,
206
- attributes: { 'form' => ['action', 'meth'],
207
- 'input' => ['type', 'value'],
208
- 'span' => ['class', 'id'],
209
- 'div' => ['class', 'id'],
210
- 'a' => ['class', 'id', 'name', 'href'],
211
- :all => ['class', 'id'],
212
- },
213
- }
214
-
215
- @san_conf = Sanitize::Config::RELAXED.merge(conf){|k,o,n| o.is_a?(Hash) ? o.merge(n) :
216
- o.is_a?(Array) ? o + n :
217
- n }
218
-
219
- #pp @san_conf
220
- @san_conf
221
- end
197
+ # def san_conf
198
+ # return @san_conf if @san_conf
199
+ # conf = { elements: ['tt', 'form', 'input', 'span', 'div'],
200
+ # output: :xhtml,
201
+ # attributes: { 'form' => ['action', 'meth'],
202
+ # 'input' => ['type', 'value'],
203
+ # 'span' => ['class', 'id'],
204
+ # 'div' => ['class', 'id'],
205
+ # 'a' => ['class', 'id', 'name', 'href'],
206
+ # :all => ['class', 'id'],
207
+ # },
208
+ # }
209
+ #
210
+ # @san_conf = Sanitize::Config::RELAXED.merge(conf){|k,o,n| o.is_a?(Hash) ? o.merge(n) :
211
+ # o.is_a?(Array) ? o + n :
212
+ # n }
213
+ #
214
+ # #pp @san_conf
215
+ # @san_conf
216
+ # end
222
217
  end
223
218
  end
@@ -1,3 +1,3 @@
1
1
  module TracWiki
2
- VERSION = '0.2.24'
2
+ VERSION = '0.3.10'
3
3
  end
data/lib/trac-wiki.rb CHANGED
@@ -7,15 +7,15 @@ module TracWiki
7
7
  # Convert the argument in Trac format to HTML and return the
8
8
  # result. Example:
9
9
  #
10
- # TracWiki.creolize("**Hello ''World''**")
10
+ # TracWiki.render("**Hello ''World''**")
11
11
  # #=> "<p><strong>Hello <em>World</em></strong></p>"
12
12
  #
13
13
  # This is an alias for calling Creole#parse:
14
14
  # TracWiki.new(text).to_html
15
15
  def self.render(text, options = {})
16
- Parser.new(text, options).to_html
16
+ Parser.new(options).to_html(text)
17
17
  end
18
- def self.parser(text, options = {})
19
- Parser.new(text, options)
18
+ def self.parser(options = {})
19
+ Parser.new(options)
20
20
  end
21
21
  end
data/test/parser_test.rb CHANGED
@@ -5,12 +5,12 @@ require 'pp'
5
5
 
6
6
  class Bacon::Context
7
7
  def tc(html, wiki, options = {})
8
- options[:plugins] = { '!print' => proc { |env| env.arg(0) + '! ' },
8
+ options[:macro_commands] = { '!print' => proc { |env| env.arg(0) + '! ' },
9
9
  }
10
10
  options[:template_handler] = self.method(:template_handler)
11
11
 
12
- parser = TracWiki.parser(wiki, options)
13
- parser.to_html.should.equal html
12
+ parser = TracWiki.parser(options)
13
+ parser.to_html(wiki).should.equal html
14
14
  end
15
15
 
16
16
  def template_handler(tname, env)
@@ -31,6 +31,12 @@ class Bacon::Context
31
31
  "WEST"
32
32
  when 'deep'
33
33
  "{{deep}}"
34
+ when 'nl'
35
+ "line one\nline two\n"
36
+ when 'nl2'
37
+ "* line one\n* line two\n"
38
+ when 'maclentest'
39
+ "maclen:{{$maclen}}"
34
40
  when 'wide'
35
41
  "0123456789{{wide}}" * 10
36
42
  else
@@ -39,8 +45,8 @@ class Bacon::Context
39
45
  end
40
46
  end
41
47
  def h(hash, wiki, opts = {})
42
- parser = TracWiki.parser(wiki, opts)
43
- parser.to_html
48
+ parser = TracWiki.parser(opts)
49
+ parser.to_html(wiki)
44
50
  #pp parser.headers
45
51
  parser.headings.should == hash
46
52
  end
@@ -608,9 +614,9 @@ describe TracWiki::Parser do
608
614
 
609
615
  tc "<table><tr><td>Hello, World!</td>\n</tr>\n</table>\n", "||Hello, World!||"
610
616
  tc "<table><tr><td style=\"text-align:right\">Hello, Right World!</td>\n</tr>\n</table>\n", "|| Hello, Right World!||"
611
- tc "<table><tr><th style=\"text-align:right\">Hello, Right World!</th></tr>\n</table>\n", "||= Hello, Right World!=||"
617
+ tc "<table><tr><th style=\"text-align:right\">Hello, Right World!</th>\n</tr>\n</table>\n", "||= Hello, Right World!=||"
612
618
  tc "<table><tr><td style=\"text-align:center\">Hello, Centered World!</td>\n</tr>\n</table>\n", "|| Hello, Centered World! ||"
613
- tc "<table><tr><th style=\"text-align:center\">Hello, Centered World!</th></tr>\n</table>\n", "||= Hello, Centered World! =||"
619
+ tc "<table><tr><th style=\"text-align:center\">Hello, Centered World!</th>\n</tr>\n</table>\n", "||= Hello, Centered World! =||"
614
620
  # Multiple columns
615
621
  tc "<table><tr><td>c1</td>\n<td>c2</td>\n<td>c3</td>\n</tr>\n</table>\n", "||c1||c2||c3||"
616
622
  # Multiple rows
@@ -626,7 +632,7 @@ describe TracWiki::Parser do
626
632
  tc "<table><tr><td>c1</td>\n<td>c2|</td>\n</tr>\n</table>\n", "||c1||c2!|"
627
633
  tc "<table><tr><td>c1</td>\n<td>c2|</td>\n<td></td>\n</tr>\n</table>\n", "||c1||c2| || ||"
628
634
  # Equal sign after pipe make a header
629
- tc "<table><tr><th>Header</th></tr>\n</table>\n", "||=Header=||"
635
+ tc "<table><tr><th>Header</th>\n</tr>\n</table>\n", "||=Header=||"
630
636
 
631
637
  tc "<table><tr><td>c1</td>\n<td><a href=\"Link\">Link text</a></td>\n<td><img src=\"Image\"/></td>\n</tr>\n</table>\n", "||c1||[[Link|Link text]]||[[Image(Image)]]||"
632
638
  tc "<table><tr><td>c1</td>\n<td><a href=\"Link\">Link text</a></td>\n<td><img src=\"Image\"/></td>\n</tr>\n</table>\n", "||c1||[Link|Link text]||[[Image(Image)]]||"
@@ -929,7 +935,7 @@ eos
929
935
  tc "<p>2WEST</p>\n", "2{{test}}"
930
936
 
931
937
  # macro errors:
932
- tc "<p>TOO_DEEP_RECURSION(<tt>{{deep}}</tt>) 3</p>\n", "{{deep}}3"
938
+ tc "<p>TOO_DEEP_RECURSION(<tt>{{deep}}</tt>)3</p>\n", "{{deep}}3"
933
939
  tc "<p>TOO_LONG_EXPANSION_OF_MACRO(wide)QUIT</p>\n", "{{wide}}3"
934
940
  tc "<p>UMACRO(unknown|)3</p>\n", "{{unknown}}3"
935
941
  end
@@ -938,8 +944,7 @@ eos
938
944
  tc "<p>jedna:VARTESTPARAM,dve:TRI,p:DVE,arg:VARTESTPARAM|p=DVE|TRI</p>\n", "{{vartest VARTESTPARAM|p=DVE|TRI}}"
939
945
  tc "<p>jedna:VARTESTPARAM,dve:TRI,p:DVE,arg:VARTESTPARAM|TRI|p=DVE|tridef</p>\n", "{{vartest2 VARTESTPARAM|p=DVE|dva=TRI}}"
940
946
  tc "<p>ahoj |</p>\n", "ahoj {{!}}"
941
- #FIXME: should be: '... jedna:be||no to be,dve: ..'
942
- tc "<p>jedna:be,dve:,p:,arg:be||not to be</p>\n", "{{vartest be{{!}}{{!}}not to be}}"
947
+ tc "<p>jedna:be||not to be,dve:,p:,arg:be||not to be</p>\n", "{{vartest be{{!}}{{!}}not to be}}"
943
948
  end
944
949
  it 'should support options' do
945
950
  tc "<h3>h1<a class=\"editheading\" href=\"?edit=1\">edit</a></h3>", "=== h1 ==", edit_heading: true
@@ -973,11 +978,13 @@ eos
973
978
  tc "<p>,2</p>\n", "{{!yset ahoj|data: [1,2]\ndesc: malo}},{{$ahoj.data.1}}"
974
979
  tc "<p>AHOJ,dve</p>\n", "{{ytest2 \nahoj: AHOJ\nbhoj: [ jedna, dve ]\n}}"
975
980
  tc "<p>,,BHOJ</p>\n", "{{!set ahoj|AHOJ}},{{!set AHOJ|BHOJ}},{{$$ahoj}}"
976
- tc "<p>(0),(1),(2),</p>\n", "{{!for i|3|({{$i}}),}}", raw_html: true
977
- tc "<p>(0),(1),(2),(3),</p>\n", "{{!for i|4|({{$i}}),}}", raw_html: true
981
+ tc "<p>(0),(1),(2),</p>\n", "{{!for i|3|({{$i}}),}}", allow_html: true
982
+ tc "<p>(0),(1),(2),(3),</p>\n", "{{!for i|4|({{$i}}),}}", allow_html: true
978
983
  tc "<p>,(ALFA),(BETA),</p>\n", "{{!yset data|[ALFA,BETA]}},{{!for i|data|({{$data.$i}}),}}"
979
984
  tc "<p>,(1),(2),</p>\n", "{{!yset data|[1,2]}},{{!for i|data|({{$data.$i}}),}}"
980
985
  tc "<p>,(alfa:ALFA),(beta:BETA),</p>\n", "{{!yset data|beta: BETA\nalfa: ALFA\n}},{{!for i|data|({{$i}}:{{$data.$i}}),}}"
986
+ tc "<p>,(0:1),(1:2),</p>\n", "{{!yset data|[ 1,2 ]\n}},{{!for i|data|({{$i}}:{{$data.$i}}),}}"
987
+ tc "<p>,</p>\n", "{{!yset data|[ ]\n}},{{!for i|data|({{$i}}:{{$data.$i}}),}}"
981
988
 
982
989
  tc "<p>,FALSE</p>\n", "{{!yset data|[1,2]}},{{!ifdef data.55|TRUE|FALSE}}"
983
990
  tc "<p>,TRUE</p>\n", "{{!yset data|[1,2]}},{{!ifdef data.1|TRUE|FALSE}}"
@@ -986,24 +993,24 @@ eos
986
993
  end
987
994
 
988
995
  it 'should parse html' do
989
- tc "<p>alert(666)</p>\n", "<script>alert(666)</script>", raw_html: true
990
- tc "<p><b>T</b>E</p>\n", "<p><b>T</b>E</p>", raw_html: true
991
- tc "<p><span>Span</span></p>\n", "<span>Span</span>\n", raw_html: true
992
- tc "<p><strong><span>Span</span></strong></p>\n", "**<span>Span</span>**\n", raw_html: true
993
- tc "<div class=\"ahoj\">Div</div>\n", "<div class=\"ahoj\">Div</div>\n", raw_html: true
994
- tc "<p><strong>ahoj</strong></p>\n<div class=\"ahoj\">Div</div>\n", "**ahoj<div class=\"ahoj\">Div</div>\n", raw_html: true
995
- tc "<p><span>Span</span><span>Span</span></p>\n", "<span>Span</span><span>Span</span>\n", raw_html: true
996
- tc "<p><em><b>boldoitali</b></em>cE</p>\n", "<p>''<b>boldoitali''c</b>E</p>", raw_html: true
997
- tc "<p><b>blabla</b></p>\n<p>endE</p>\n", "<p><b>bla</html>bla</p>end</b>E</p>", raw_html: true
998
- tc "<p>baf</p>\n", "\n\n\nbaf\n\n\n", raw_html: true
999
- tc "<div class=\"ahoj\">Div</div>\n<p>baf</p>\n", "<div class=\"ahoj\">Div</div>\nbaf\n", raw_html: true
1000
-
1001
- tc "<p><b>BOLD</b></p>\n", "<b>BOLD</b>\n", raw_html: true
1002
- tc "<p><br/></p>\n", "<br/>\n", raw_html: true
1003
- tc "<p><br/></p>\n", "<br></br>\n", raw_html: true
1004
- tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b class=\"bclass\">BOLD</b>\n", raw_html: true
1005
- tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b bad=\"bad\" class=\"bclass\">BOLD</b>\n", raw_html: true
1006
- tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b bad=\"bad\" class=\"bclass\">BOLD</b>\n", raw_html: true
996
+ tc "<p>alert(666)</p>\n", "<script>alert(666)</script>", allow_html: true
997
+ tc "<p><b>T</b>E</p>\n", "<p><b>T</b>E</p>", allow_html: true
998
+ tc "<p><span>Span</span></p>\n", "<span>Span</span>\n", allow_html: true
999
+ tc "<p><strong><span>Span</span></strong></p>\n", "**<span>Span</span>**\n", allow_html: true
1000
+ tc "<div class=\"ahoj\">Div</div>\n", "<div class=\"ahoj\">Div</div>\n", allow_html: true
1001
+ tc "<p><strong>ahoj</strong></p>\n<div class=\"ahoj\">Div</div>\n", "**ahoj<div class=\"ahoj\">Div</div>\n", allow_html: true
1002
+ tc "<p><span>Span</span><span>Span</span></p>\n", "<span>Span</span><span>Span</span>\n", allow_html: true
1003
+ tc "<p><em><b>boldoitali</b></em>cE</p>\n", "<p>''<b>boldoitali''c</b>E</p>", allow_html: true
1004
+ tc "<p><b>blabla</b></p>\n<p>endE</p>\n", "<p><b>bla</html>bla</p>end</b>E</p>", allow_html: true
1005
+ tc "<p>baf</p>\n", "\n\n\nbaf\n\n\n", allow_html: true
1006
+ tc "<div class=\"ahoj\">Div</div>\n<p>baf</p>\n", "<div class=\"ahoj\">Div</div>\nbaf\n", allow_html: true
1007
+
1008
+ tc "<p><b>BOLD</b></p>\n", "<b>BOLD</b>\n", allow_html: true
1009
+ tc "<p><br/></p>\n", "<br/>\n", allow_html: true
1010
+ tc "<p><br/></p>\n", "<br></br>\n", allow_html: true
1011
+ tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b class=\"bclass\">BOLD</b>\n", allow_html: true
1012
+ tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b bad=\"bad\" class=\"bclass\">BOLD</b>\n", allow_html: true
1013
+ tc "<p><b class=\"bclass\">BOLD</b></p>\n", "<b bad=\"bad\" class=\"bclass\">BOLD</b>\n", allow_html: true
1007
1014
  end
1008
1015
  it 'should parse link' do
1009
1016
  tc "<p><a href=\"#here\">Here</a></p>\n", "[[#here|Here]]"
@@ -1014,10 +1021,82 @@ eos
1014
1021
  end
1015
1022
  it 'should parse dnl inside macro' do
1016
1023
  tc "<p>d<blockquote>e</blockquote></p>\n", "{{!ifeq a|b|c|d\n e}}"
1017
- tc "<p>d e</p>\n", "{{!ifeq a|b|c|d\\\n e}}"
1024
+ tc "<p>de</p>\n", "{{!ifeq a|b|c|d\\\n e}}"
1018
1025
  tc "<p>d<strong>e</strong></p>\n", "{{!ifeq a|b|c|d**\\\ne**}}"
1019
1026
  tc "<p>d<strong>e</strong></p>\n", "{{!ifeq a|b|c|d*\\\n*e**}}"
1027
+ tc "<p>d<strong>e</strong></p>\n", "{{!ifeq a|b|c|d*\\\r\n*e**}}"
1028
+ tc "<p>e</p>\n", "{{!ifeq a|b|c|\\\r\ne}}"
1029
+ tc "<p>a0a1a2</p>\n", "{{!for i|3|a\\\n{{$i}}}}"
1030
+ tc "<p>a0a1a2</p>\n", "{{!for i|3|a\\\n {{$i}}}}"
1031
+ end
1032
+ it 'should parse offset' do
1033
+ tc "<p>0</p>\n", "{{$offset}}"
1034
+ tc "<p>12345-6</p>\n", "12345-{{$offset}}"
1035
+ tc "<p>žížala-7</p>\n", "žížala-{{$offset}}"
1036
+ tc "<p><strong>B</strong>-6</p>\n", "**B**-{{$offset}}"
1037
+ tc "<p><a href=\"L\">L</a>-6</p>\n", "[[L]]-{{$offset}}"
1038
+ tc "<p><a href=\"L\">4</a></p>\n", "[[L|{{$offset}}]]"
1039
+ tc "<p><a href=\"L\">3</a></p>\n", "[L|{{$offset}}]"
1040
+ tc "<p><strong>B</strong><a href=\"L\">9</a></p>\n", "**B**[[L|{{$offset}}]]"
1041
+ tc "<ul><li>2</li>\n</ul>\n", "* {{$offset}}"
1042
+ tc "<h1>2</h1>", "= {{$offset}} ="
1043
+ tc "<h1><strong>B</strong> 8</h1>", "= **B** {{$offset}} ="
1044
+ tc "<p>bla</p>\n<h1><strong>B</strong> 8</h1>", "bla\n= **B** {{$offset}} ="
1045
+ tc "<p><blockquote>2</blockquote></p>\n", " {{$offset}}"
1046
+ tc "<table><tr><td>ahoj</td>\n<td>11</td>\n</tr>\n</table>\n", "|| ahoj || {{$offset}} ||"
1047
+ tc "<table><tr><td>ahoj</td>\n<td>13</td>\n</tr>\n</table>\n", "|| ahoj || {{$offset}} ||"
1048
+ tc "<table><tr><td>3</td>\n<td>20</td>\n</tr>\n</table>\n", "|| {{$offset}} || {{$offset}} ||"
1049
+ tc "<table><tr><td>3</td>\n<td>20</td>\n</tr>\n<tr><td>3</td>\n<td>20</td>\n</tr>\n</table>\n",
1050
+ "|| {{$offset}} || {{$offset}} ||\n|| {{$offset}} || {{$offset}} ||"
1051
+ tc "<table><tr><td>3</td>\n</tr>\n</table>\n", "|| {{$offset}} ||"
1052
+ tc "<table><tr><th>3</th>\n</tr>\n</table>\n", "||={{$offset}}=||"
1053
+ tc "<table><tr><th>4</th>\n</tr>\n</table>\n", "||= {{$offset}} =||"
1054
+ tc "<table><tr><td style=\"text-align:right\">3</td>\n</tr>\n</table>\n", "|| {{$offset}}||"
1055
+ tc "<table><tr><td style=\"text-align:center\">4</td>\n</tr>\n</table>\n", "|| {{$offset}} ||"
1056
+ tc "<p><blockquote>2</blockquote></p>\n", "> {{$offset}}"
1057
+ tc "<p><blockquote>2<blockquote>6</blockquote></blockquote></p>\n", "> {{$offset}}\n> > {{$offset}}"
1058
+ tc "<p>test:5,17</p>\n", "test:{{$offset}},{{$offset}}"
1059
+ tc "<p>test:5,17,<strong>31</strong></p>\n", "test:{{$offset}},{{$offset}},**{{$offset}}**"
1060
+ end
1061
+ it 'should parse offset and template' do
1062
+ tc "<p>ahoj ahoj,19</p>\n" , "ahoj {{$mac|ahoj}},{{$offset}}"
1063
+ tc "<p>ahoj line one line two ,12</p>\n" , "ahoj {{nl}},{{$offset}}"
1064
+ tc "<ul><li>line one</li>\n<li>line two,8</li>\n</ul>\n" , "{{nl2}},{{$offset}}"
1065
+ tc "<ul><li>line one</li>\n<li>line two 8</li>\n</ul>\n" , "{{nl2}} {{$offset}}"
1066
+ # in the future:
1067
+ #tc "<p>ble * line one</p>\n<ul><li>line two 8</li>\n</ul>\n" , "ble {{nl2}} {{$offset}}"
1068
+ end
1069
+ it 'should parse macro len' do
1070
+ tc "<p>11</p>\n" , "{{$maclen}}"
1071
+ tc "<p>17</p>\n" , "{{$maclen|12345}}"
1072
+ tc "<p>18</p>\n" , "{{$maclen| 12345}}"
1073
+ tc "<p>19</p>\n" , "{{$maclen | 12345}}"
1074
+ tc "<p>18</p>\n" , "{{$maclen |12345}}"
1075
+ tc "<p>18</p>\n" , "{{$maclen |12345}}"
1076
+ tc "<p>15</p>\n" , "{{$maclen|kuk}}"
1077
+ tc "<p>15</p>\n" , "{{$maclen|123}}"
1078
+ tc "<p>18</p>\n" , "{{$maclen|žížala}}"
1079
+ tc "<p>37</p>\n" , "{{$maclen|{{$maclen}}{{!echo ahoj}}}}"
1080
+ tc "<p><strong>37</strong></p>\n" , "**{{$maclen|{{$maclen}}{{!echo ahoj}}}}**"
1081
+ tc "<p>28</p>\n" , "{{$maclen|a=e|b=c|d={{$e}}}}"
1082
+ tc "<p>maclen:14</p>\n" , "{{maclentest}}"
1083
+ end
1084
+ it 'should parse lineno' do
1085
+ tc "<p>1</p>\n" , "{{$lineno}}"
1086
+ tc "<p>3</p>\n" , "\n\n{{$lineno}}"
1087
+ tc "<p><strong>ahoj</strong></p>\n<p>4</p>\n" , "**ahoj**\n\n\n{{$lineno}}"
1088
+ tc "<pre>ahoj</pre><p>4</p>\n" , "{{{\nahoj\n}}}\n{{$lineno}}"
1089
+ tc "<div class=\"math\">\nahoj\n</div>\n<p>4</p>\n" , "$$\nahoj\n$$\n{{$lineno}}", math: true
1090
+ tc "<p>WEST WEST 3</p>\n" , "{{test}}\n{{test}}\n{{$lineno}}"
1091
+ tc "<p>WEST 2</p>\n" , "{{test}}\n{{$lineno}}"
1092
+ tc "<p>line one line two 1</p>\n" , "{{nl}} {{$lineno}}"
1093
+ tc "<ul><li>line one</li>\n<li>line two 1</li>\n</ul>\n" , "{{nl2}} {{$lineno}}"
1094
+ tc "<ul><li>line one</li>\n<li>line two 2</li>\n</ul>\n" , "{{nl2}}\n{{$lineno}}"
1095
+ tc "<ul><li>line one</li>\n<li>line twoline one line two 3</li>\n</ul>\n" , "\n{{nl2}}{{nl}}\n{{$lineno}}"
1096
+ tc "<h2>ahoj</h2><p>2</p>\n<h2>ahoj</h2><p>5</p>\n", "==ahoj==\n{{$lineno}}\n\n==ahoj==\n{{$lineno}}"
1097
+ tc "<table><tr><td>This is <strong>bold</strong></td>\n</tr>\n</table>\n<p>2</p>\n", "||This is **bold**||\n{{$lineno}}"
1098
+ tc "<ul><li>[[ahoj|bhoj]]</li>\n</ul>\n<p>3</p>\n", "* [[ahoj|bhoj]]\n\n{{$lineno}}", :no_link => true
1099
+ tc "<ul><li>[[ahoj|bhoj]] 2</li>\n</ul>\n", "* [[ahoj|bhoj]]\n{{$lineno}}", :no_link => true
1020
1100
  end
1021
-
1022
1101
  end
1023
1102
  # vim: tw=0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trac-wiki
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.24
4
+ version: 0.3.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-06 00:00:00.000000000 Z
12
+ date: 2014-03-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bacon