tdiary 3.2.2.20130518 → 3.2.2.20130527

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +17 -11
  4. data/Rakefile +2 -0
  5. data/config.ru +2 -1
  6. data/tdiary.gemspec +7 -0
  7. data/tdiary.rb +6 -2
  8. data/tdiary/cli.rb +27 -1
  9. data/tdiary/environment.rb +0 -1
  10. data/tdiary/tasks/release.rake +7 -1
  11. data/tdiary/version.rb +1 -1
  12. metadata +87 -132
  13. data/vendor/hikidoc-0.0.6/COPYING +0 -28
  14. data/vendor/hikidoc-0.0.6/NEWS +0 -30
  15. data/vendor/hikidoc-0.0.6/NEWS.ja +0 -30
  16. data/vendor/hikidoc-0.0.6/README +0 -86
  17. data/vendor/hikidoc-0.0.6/README.ja +0 -83
  18. data/vendor/hikidoc-0.0.6/Rakefile +0 -68
  19. data/vendor/hikidoc-0.0.6/TextFormattingRules +0 -320
  20. data/vendor/hikidoc-0.0.6/TextFormattingRules.ja +0 -318
  21. data/vendor/hikidoc-0.0.6/bin/hikidoc +0 -66
  22. data/vendor/hikidoc-0.0.6/lib/hikidoc.rb +0 -914
  23. data/vendor/hikidoc-0.0.6/setup.rb +0 -1360
  24. data/vendor/hikidoc-0.0.6/test/run-test.rb +0 -13
  25. data/vendor/hikidoc-0.0.6/test/test_hikidoc.rb +0 -506
  26. data/vendor/imagesize-0.1.1/Manifest.txt +0 -19
  27. data/vendor/imagesize-0.1.1/README.txt +0 -49
  28. data/vendor/imagesize-0.1.1/lib/image_size.rb +0 -305
  29. data/vendor/imagesize-0.1.1/lib/image_size/version.rb +0 -9
  30. data/vendor/imagesize-0.1.1/setup.rb +0 -1585
  31. data/vendor/imagesize-0.1.1/test/2-4-7.png +0 -0
  32. data/vendor/imagesize-0.1.1/test/4_1_2.gif +0 -0
  33. data/vendor/imagesize-0.1.1/test/bmp.bmp +0 -0
  34. data/vendor/imagesize-0.1.1/test/cursor.xbm +0 -6
  35. data/vendor/imagesize-0.1.1/test/detect.swf +0 -0
  36. data/vendor/imagesize-0.1.1/test/pbm.pbm +0 -0
  37. data/vendor/imagesize-0.1.1/test/pcx.pcx +0 -0
  38. data/vendor/imagesize-0.1.1/test/pgm.pgm +0 -5
  39. data/vendor/imagesize-0.1.1/test/test.xpm +0 -38
  40. data/vendor/imagesize-0.1.1/test/test_helper.rb +0 -2
  41. data/vendor/imagesize-0.1.1/test/test_image_size.rb +0 -71
  42. data/vendor/imagesize-0.1.1/test/tiff.tiff +0 -0
  43. data/vendor/imagesize-0.1.1/test/tokyo_tower.jpg +0 -0
  44. data/vendor/imagesize-0.1.1/test/tower_e.gif.psd +0 -0
  45. data/vendor/rdtool-0.6.38/COPYING.txt +0 -339
  46. data/vendor/rdtool-0.6.38/Gemfile +0 -3
  47. data/vendor/rdtool-0.6.38/HISTORY +0 -318
  48. data/vendor/rdtool-0.6.38/LGPL-2.1 +0 -502
  49. data/vendor/rdtool-0.6.38/LICENSE.txt +0 -58
  50. data/vendor/rdtool-0.6.38/README.html +0 -66
  51. data/vendor/rdtool-0.6.38/README.ja.html +0 -73
  52. data/vendor/rdtool-0.6.38/README.rd +0 -76
  53. data/vendor/rdtool-0.6.38/README.rd.ja +0 -85
  54. data/vendor/rdtool-0.6.38/Rakefile +0 -152
  55. data/vendor/rdtool-0.6.38/TODO +0 -22
  56. data/vendor/rdtool-0.6.38/bin/rd2 +0 -283
  57. data/vendor/rdtool-0.6.38/bin/rdswap.rb +0 -207
  58. data/vendor/rdtool-0.6.38/doc/rd-draft.html +0 -456
  59. data/vendor/rdtool-0.6.38/doc/rd-draft.ja.html +0 -466
  60. data/vendor/rdtool-0.6.38/doc/rd-draft.rd +0 -479
  61. data/vendor/rdtool-0.6.38/doc/rd-draft.rd.ja +0 -487
  62. data/vendor/rdtool-0.6.38/lib/rd/block-element.rb +0 -114
  63. data/vendor/rdtool-0.6.38/lib/rd/complex-list-item.rb +0 -65
  64. data/vendor/rdtool-0.6.38/lib/rd/desclist.rb +0 -55
  65. data/vendor/rdtool-0.6.38/lib/rd/document-struct.rb +0 -46
  66. data/vendor/rdtool-0.6.38/lib/rd/dot.rd2rc +0 -18
  67. data/vendor/rdtool-0.6.38/lib/rd/element.rb +0 -160
  68. data/vendor/rdtool-0.6.38/lib/rd/filter.rb +0 -255
  69. data/vendor/rdtool-0.6.38/lib/rd/head-filter.rb +0 -14
  70. data/vendor/rdtool-0.6.38/lib/rd/inline-element.rb +0 -233
  71. data/vendor/rdtool-0.6.38/lib/rd/labeled-element.rb +0 -14
  72. data/vendor/rdtool-0.6.38/lib/rd/list.rb +0 -57
  73. data/vendor/rdtool-0.6.38/lib/rd/loose-struct.rb +0 -11
  74. data/vendor/rdtool-0.6.38/lib/rd/methodlist.rb +0 -57
  75. data/vendor/rdtool-0.6.38/lib/rd/output-format-visitor.rb +0 -30
  76. data/vendor/rdtool-0.6.38/lib/rd/package.rb +0 -4
  77. data/vendor/rdtool-0.6.38/lib/rd/parser-util.rb +0 -14
  78. data/vendor/rdtool-0.6.38/lib/rd/post-install +0 -1
  79. data/vendor/rdtool-0.6.38/lib/rd/pre-setup.rb +0 -18
  80. data/vendor/rdtool-0.6.38/lib/rd/rbl-file.rb +0 -69
  81. data/vendor/rdtool-0.6.38/lib/rd/rbl-suite.rb +0 -37
  82. data/vendor/rdtool-0.6.38/lib/rd/rd-struct.rb +0 -86
  83. data/vendor/rdtool-0.6.38/lib/rd/rd2html-ext-lib.rb +0 -266
  84. data/vendor/rdtool-0.6.38/lib/rd/rd2html-ext-opt.rb +0 -34
  85. data/vendor/rdtool-0.6.38/lib/rd/rd2html-lib.rb +0 -490
  86. data/vendor/rdtool-0.6.38/lib/rd/rd2html-opt.rb +0 -67
  87. data/vendor/rdtool-0.6.38/lib/rd/rd2man-lib.rb +0 -251
  88. data/vendor/rdtool-0.6.38/lib/rd/rd2rdo-lib.rb +0 -19
  89. data/vendor/rdtool-0.6.38/lib/rd/rd2rmi-lib.rb +0 -32
  90. data/vendor/rdtool-0.6.38/lib/rd/rdblockparser.ry +0 -518
  91. data/vendor/rdtool-0.6.38/lib/rd/rdblockparser.tab.rb +0 -1061
  92. data/vendor/rdtool-0.6.38/lib/rd/rdfmt.rb +0 -15
  93. data/vendor/rdtool-0.6.38/lib/rd/rdinlineparser.ry +0 -503
  94. data/vendor/rdtool-0.6.38/lib/rd/rdinlineparser.tab.rb +0 -1243
  95. data/vendor/rdtool-0.6.38/lib/rd/rdvisitor.rb +0 -214
  96. data/vendor/rdtool-0.6.38/lib/rd/reference-resolver.rb +0 -114
  97. data/vendor/rdtool-0.6.38/lib/rd/search-file.rb +0 -14
  98. data/vendor/rdtool-0.6.38/lib/rd/tree.rb +0 -103
  99. data/vendor/rdtool-0.6.38/lib/rd/version.rb +0 -41
  100. data/vendor/rdtool-0.6.38/lib/rd/visitor.rb +0 -86
  101. data/vendor/rdtool-0.6.38/rdtool.gemspec +0 -125
  102. data/vendor/rdtool-0.6.38/setup.rb +0 -1596
  103. data/vendor/rdtool-0.6.38/test/data/includee1.html +0 -1
  104. data/vendor/rdtool-0.6.38/test/data/includee2.html +0 -1
  105. data/vendor/rdtool-0.6.38/test/data/includee3.nothtml +0 -1
  106. data/vendor/rdtool-0.6.38/test/data/includee4.xhtml +0 -0
  107. data/vendor/rdtool-0.6.38/test/data/label.rbl +0 -2
  108. data/vendor/rdtool-0.6.38/test/data/label2.rbl +0 -2
  109. data/vendor/rdtool-0.6.38/test/data/sub/includee2.html +0 -1
  110. data/vendor/rdtool-0.6.38/test/data/sub/includee4.html +0 -0
  111. data/vendor/rdtool-0.6.38/test/dummy-observer.rb +0 -6
  112. data/vendor/rdtool-0.6.38/test/dummy.rb +0 -33
  113. data/vendor/rdtool-0.6.38/test/temp-dir.rb +0 -19
  114. data/vendor/rdtool-0.6.38/test/test-block-parser.rb +0 -46
  115. data/vendor/rdtool-0.6.38/test/test-desclist-item.rb +0 -219
  116. data/vendor/rdtool-0.6.38/test/test-document-element.rb +0 -46
  117. data/vendor/rdtool-0.6.38/test/test-document-struct.rb +0 -66
  118. data/vendor/rdtool-0.6.38/test/test-element.rb +0 -46
  119. data/vendor/rdtool-0.6.38/test/test-headline.rb +0 -80
  120. data/vendor/rdtool-0.6.38/test/test-inline-parser.rb +0 -46
  121. data/vendor/rdtool-0.6.38/test/test-list-item.rb +0 -54
  122. data/vendor/rdtool-0.6.38/test/test-list.rb +0 -53
  123. data/vendor/rdtool-0.6.38/test/test-methodlist-item.rb +0 -73
  124. data/vendor/rdtool-0.6.38/test/test-nonterminal-element.rb +0 -170
  125. data/vendor/rdtool-0.6.38/test/test-nonterminal-inline.rb +0 -33
  126. data/vendor/rdtool-0.6.38/test/test-output-format-visitor.rb +0 -48
  127. data/vendor/rdtool-0.6.38/test/test-parser-util.rb +0 -41
  128. data/vendor/rdtool-0.6.38/test/test-rbl-file.rb +0 -156
  129. data/vendor/rdtool-0.6.38/test/test-rbl-suite.rb +0 -43
  130. data/vendor/rdtool-0.6.38/test/test-rd2html-lib.rb +0 -496
  131. data/vendor/rdtool-0.6.38/test/test-rdtree.rb +0 -17
  132. data/vendor/rdtool-0.6.38/test/test-rdvisitor.rb +0 -29
  133. data/vendor/rdtool-0.6.38/test/test-reference-resolver.rb +0 -202
  134. data/vendor/rdtool-0.6.38/test/test-reference.rb +0 -132
  135. data/vendor/rdtool-0.6.38/test/test-search-file.rb +0 -22
  136. data/vendor/rdtool-0.6.38/test/test-terminal-inline.rb +0 -41
  137. data/vendor/rdtool-0.6.38/test/test-textblock.rb +0 -44
  138. data/vendor/rdtool-0.6.38/test/test-tree.rb +0 -82
  139. data/vendor/rdtool-0.6.38/test/test-version.rb +0 -57
  140. data/vendor/rdtool-0.6.38/test/test-visitor.rb +0 -230
  141. data/vendor/rdtool-0.6.38/utils/rd-mode.el +0 -464
@@ -1,13 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "test/unit"
4
-
5
- if Test::Unit.respond_to?(:setup_argv)
6
- Test::Unit::setup_argv{[File.dirname($0)]}
7
- else
8
- if Test::Unit::AutoRunner.respond_to?(:standalone?)
9
- exit Test::Unit::AutoRunner.run($0, File.dirname($0))
10
- else
11
- exit Test::Unit::AutoRunner.run(false, File.dirname($0))
12
- end
13
- end
@@ -1,506 +0,0 @@
1
- require "test/unit"
2
- rootdir = "#{File::dirname(__FILE__)}/.."
3
- require "#{rootdir}/lib/hikidoc"
4
-
5
- class HikiDocTestCase < Test::Unit::TestCase
6
- def test_plugin
7
- assert_convert("<div class=\"plugin\">{{hoge}}</div>\n",
8
- "{{hoge}}")
9
- assert_convert("<p>a<span class=\"plugin\">{{hoge}}</span>b</p>\n",
10
- "a{{hoge}}b")
11
- assert_convert("<p>\\<span class=\"plugin\">{{hoge}}</span></p>\n",
12
- "\\{{hoge}}")
13
- assert_convert("<p>a{{hoge</p>\n",
14
- "a{{hoge")
15
- assert_convert("<p>hoge}}b</p>\n",
16
- "hoge}}b")
17
- assert_convert("<p><span class=\"plugin\">{{hoge}}</span>\na</p>\n",
18
- "{{hoge}}\na")
19
- assert_convert("<div class=\"plugin\">{{hoge}}</div>\n<p>a</p>\n",
20
- "{{hoge}}\n\na")
21
- end
22
-
23
- def test_plugin_with_quotes
24
- assert_convert("<div class=\"plugin\">{{hoge(\"}}\")}}</div>\n",
25
- '{{hoge("}}")}}')
26
- assert_convert("<div class=\"plugin\">{{hoge(\'}}\')}}</div>\n",
27
- "{{hoge('}}')}}")
28
- assert_convert("<div class=\"plugin\">{{hoge(\'\n}}\n\')}}</div>\n",
29
- "{{hoge('\n}}\n')}}")
30
- end
31
-
32
- def test_plugin_with_meta_char
33
- assert_convert("<div class=\"plugin\">{{hoge(\"a\\\"b\")}}</div>\n",
34
- '{{hoge("a\\"b")}}')
35
- assert_convert("<div class=\"plugin\">{{hoge(\"&lt;a&gt;\")}}</div>\n",
36
- '{{hoge("<a>")}}')
37
- assert_convert("<p>a<span class=\"plugin\">{{hoge(\"&lt;a&gt;\")}}</span></p>\n",
38
- 'a{{hoge("<a>")}}')
39
- end
40
-
41
- def test_plugin_with_default_syntax
42
- # test HikiDoc#valid_plugin_syntax?
43
- # default syntax checking pairs of quote like "..." or '...'
44
- assert_convert(%q!<p>{{'}}</p>! + "\n",
45
- %q!{{'}}!)
46
- assert_convert(%q!<div class="plugin">{{''}}</div>! + "\n",
47
- %q!{{''}}!)
48
- assert_convert(%q!<p>{{'"}}</p>! + "\n",
49
- %q!{{'"}}!)
50
- assert_convert(%q!<div class="plugin">{{'\''}}</div>! + "\n",
51
- %q!{{'\''}}!)
52
- assert_convert(%q!<div class="plugin">{{'abc\\\\'}}</div>! + "\n",
53
- %q!{{'abc\\\\'}}!)
54
- assert_convert(%q!<div class="plugin">{{\"""}}</div>! + "\n",
55
- %q!{{\"""}}!)
56
- assert_convert(%q!<div class="plugin">{{"ab\c"}}</div>! + "\n",
57
- %q!{{"ab\c"}}!)
58
- end
59
-
60
- def test_plugin_with_custom_syntax
61
- assert_convert("<p>{{&lt;&lt;\"End\"\nfoo's bar\nEnd\n}}</p>\n",
62
- "{{<<\"End\"\nfoo's bar\nEnd\n}}")
63
-
64
- options = {:plugin_syntax => method(:custom_valid_plugin_syntax?)}
65
- assert_convert(%Q|<div class="plugin">{{&lt;&lt;"End"\nfoo's bar\nEnd\n}}</div>\n|,
66
- %Q!{{<<"End"\nfoo's bar\nEnd\n}}!,
67
- options)
68
- assert_convert(%Q|<div class="plugin">{{&lt;&lt;"End"\nfoo\nEnd}}</div>\n|,
69
- %Q!{{<<"End"\nfoo\nEnd}}!,
70
- options)
71
- end
72
-
73
- def test_multi_line_plugin
74
- assert_convert(<<-END_OF_EXPECTED, <<-END_OF_INPUT)
75
- <div class="plugin">{{&lt;&lt;TEST2
76
- test2
77
- TEST2}}</div>
78
- END_OF_EXPECTED
79
- {{<<TEST2
80
- test2
81
- TEST2}}
82
- END_OF_INPUT
83
-
84
- assert_convert(<<-END_OF_EXPECTED, <<-END_OF_INPUT)
85
- <div class="plugin">{{&lt;&lt;TEST
86
- &lt;&lt;&lt;
87
- here is not pre but plugin.
88
- &gt;&gt;&gt;
89
- TEST}}</div>
90
- END_OF_EXPECTED
91
- {{<<TEST
92
- <<<
93
- here is not pre but plugin.
94
- >>>
95
- TEST}}
96
- END_OF_INPUT
97
- end
98
-
99
- def test_blockquote
100
- assert_convert("<blockquote><p>hoge</p>\n</blockquote>\n",
101
- %Q|""hoge\n|)
102
- assert_convert("<blockquote><p>hoge\nfuga</p>\n</blockquote>\n",
103
- %Q|""hoge\n""fuga\n|)
104
- assert_convert("<blockquote><p>hoge</p>\n<blockquote><p>fuga</p>\n</blockquote>\n</blockquote>\n",
105
- %Q|""hoge\n"" ""fuga\n|)
106
- assert_convert("<blockquote><h1>hoge</h1>\n</blockquote>\n",
107
- %Q|"" ! hoge\n|)
108
- assert_convert("<blockquote><p>foo\nbar</p>\n<p>foo</p>\n</blockquote>\n",
109
- %Q|""foo\n""bar\n""\n""foo|)
110
- assert_convert("<blockquote><p>foo\nbar</p>\n<h1>foo</h1>\n</blockquote>\n",
111
- %Q|""foo\n""bar\n""!foo|)
112
- assert_convert("<blockquote><p>foo\nbar</p>\n<pre>baz</pre>\n</blockquote>\n",
113
- %Q|""foo\n"" bar\n"" baz|)
114
- assert_convert("<blockquote><p>foo\nbar</p>\n<pre>baz</pre>\n</blockquote>\n",
115
- %Q|""foo\n""\tbar\n""\t\tbaz|)
116
- end
117
-
118
- def test_header
119
- assert_convert("<h1>hoge</h1>\n", "!hoge")
120
- assert_convert("<h2>hoge</h2>\n", "!! hoge")
121
- assert_convert("<h3>hoge</h3>\n", "!!!hoge")
122
- assert_convert("<h4>hoge</h4>\n", "!!!! hoge")
123
- assert_convert("<h5>hoge</h5>\n", "!!!!!hoge")
124
- assert_convert("<h6>hoge</h6>\n", "!!!!!! hoge")
125
- assert_convert("<h6>! hoge</h6>\n", "!!!!!!! hoge")
126
-
127
- assert_convert("<h1>foo</h1>\n<h2>bar</h2>\n",
128
- "!foo\n!!bar")
129
- end
130
-
131
- def test_list
132
- assert_convert("<ul>\n<li>foo</li>\n</ul>\n",
133
- "* foo")
134
- assert_convert("<ul>\n<li>foo</li>\n<li>bar</li>\n</ul>\n",
135
- "* foo\n* bar")
136
- assert_convert("<ul>\n<li>foo<ul>\n<li>bar</li>\n</ul></li>\n</ul>\n",
137
- "* foo\n** bar")
138
- assert_convert("<ul>\n<li>foo<ul>\n<li>foo</li>\n</ul></li>\n<li>bar</li>\n</ul>\n",
139
- "* foo\n** foo\n* bar")
140
- assert_convert("<ul>\n<li>foo<ol>\n<li>foo</li>\n</ol></li>\n<li>bar</li>\n</ul>\n",
141
- "* foo\n## foo\n* bar")
142
- assert_convert("<ul>\n<li>foo</li>\n</ul><ol>\n<li>bar</li>\n</ol>\n",
143
- "* foo\n# bar")
144
- end
145
-
146
- def test_list_skip
147
- assert_convert("<ul>\n<li>foo<ul>\n<li><ul>\n<li>foo</li>\n</ul></li>\n</ul></li>\n<li>bar</li>\n</ul>\n",
148
- "* foo\n*** foo\n* bar")
149
- assert_convert("<ol>\n<li>foo<ol>\n<li><ol>\n<li>bar</li>\n<li>baz</li>\n</ol></li>\n</ol></li>\n</ol>\n",
150
- "# foo\n### bar\n###baz")
151
- end
152
-
153
- def test_hrules
154
- assert_convert("<hr />\n", "----")
155
- assert_convert("<p>----a</p>\n", "----a")
156
- end
157
-
158
- def test_pre
159
- assert_convert("<pre>foo</pre>\n",
160
- " foo")
161
- assert_convert("<pre>\\:</pre>\n",
162
- ' \:')
163
- assert_convert("<pre>foo</pre>\n",
164
- "\tfoo")
165
- assert_convert("<pre>foo\nbar</pre>\n",
166
- " foo\n bar")
167
- assert_convert("<pre>foo\nbar</pre>\n",
168
- " foo\n bar\n")
169
- assert_convert("<pre>&lt;foo&gt;</pre>\n",
170
- " <foo>")
171
- assert_convert("<pre>{{_:a/a}}</pre>\n",
172
- " {{_:a/a}}")
173
- assert_convert("<pre>[[_:a/a]]</pre>\n",
174
- " [[_:a/a]]")
175
- end
176
-
177
- def test_multi_pre
178
- assert_convert("<pre>foo</pre>\n",
179
- "<<<\nfoo\n>>>")
180
- assert_convert("<pre>foo\n bar</pre>\n",
181
- "<<<\nfoo\n bar\n>>>")
182
- assert_convert("<pre>foo</pre>\n<pre>bar</pre>\n",
183
- "<<<\nfoo\n>>>\n<<<\nbar\n>>>")
184
- assert_convert("<pre>&lt;foo&gt;</pre>\n",
185
- "<<<\n<foo>\n>>>")
186
- end
187
-
188
- def test_multi_pre_with_plugin
189
- assert_convert("<pre>{{{}}}</pre>\n" +
190
- "<div class=\"plugin\">{{'test'}}</div>\n",
191
- "<<<\n{{{}}}\n>>>\n{{'test'}}")
192
- end
193
-
194
- def test_comment
195
- assert_convert("", "// foo")
196
- assert_convert("", "// foo\n")
197
- end
198
-
199
- def test_paragraph
200
- assert_convert("<p>foo</p>\n", "foo")
201
-
202
- assert_convert("<p>foo</p>\n<p>bar</p>\n",
203
- "foo\n\nbar")
204
- assert_convert("<p>foo</p>\n<p>bar</p>\n",
205
- "foo\r\n\r\nbar")
206
-
207
- assert_convert("<p>foo </p>\n<p>b a r </p>\n",
208
- "foo \n\nb a r ")
209
- end
210
-
211
- def test_escape
212
- assert_convert(%Q|<p>\\"\\"foo</p>\n|,
213
- %q|\"\"foo|)
214
- end
215
-
216
- def test_link
217
- assert_convert(%Q|<p><a href="http://hikiwiki.org/">http://hikiwiki.org/</a></p>\n|,
218
- "http://hikiwiki.org/")
219
- assert_convert(%Q|<p><a href="http://hikiwiki.org/">http://hikiwiki.org/</a></p>\n|,
220
- "[[http://hikiwiki.org/]]")
221
- assert_convert(%Q|<p><a href="http://hikiwiki.org/">Hiki</a></p>\n|,
222
- "[[Hiki|http://hikiwiki.org/]]")
223
- assert_convert(%Q|<p><a href="/hikiwiki.html">Hiki</a></p>\n|,
224
- "[[Hiki|http:/hikiwiki.html]]")
225
- assert_convert(%Q|<p><a href="hikiwiki.html">Hiki</a></p>\n|,
226
- "[[Hiki|http:hikiwiki.html]]")
227
- assert_convert(%Q|<p><img src="http://hikiwiki.org/img.png" alt="img.png" /></p>\n|,
228
- "http://hikiwiki.org/img.png")
229
- assert_convert(%Q|<p><img src="http://hikiwiki.org:80/img.png" alt="img.png" /></p>\n|,
230
- "http://hikiwiki.org:80/img.png")
231
- assert_convert(%Q|<p><a href="http://hikiwiki.org/ja/?c=edit;p=Test">| +
232
- %Q|http://hikiwiki.org/ja/?c=edit;p=Test</a></p>\n|,
233
- "http://hikiwiki.org/ja/?c=edit;p=Test")
234
- assert_convert(%Q|<p><a href="http://hikiwiki.org/ja/?c=edit&amp;p=Test">| +
235
- %Q|http://hikiwiki.org/ja/?c=edit&amp;p=Test</a></p>\n|,
236
- "http://hikiwiki.org/ja/?c=edit&p=Test")
237
- assert_convert(%Q|<p><img src="/img.png" alt="img.png" /></p>\n|,
238
- "http:/img.png")
239
- assert_convert(%Q|<p><img src="img.png" alt="img.png" /></p>\n|,
240
- "http:img.png")
241
- assert_convert(%Q|<p><a href="%CB%EE">Tuna</a></p>\n|,
242
- "[[Tuna|%CB%EE]]")
243
- assert_convert(%Q|<p><a href="&quot;&quot;">""</a></p>\n|,
244
- '[[""]]')
245
- assert_convert(%Q|<p><a href="%22">%22</a></p>\n|,
246
- "[[%22]]")
247
- assert_convert(%Q|<p><a href="&amp;">&amp;</a></p>\n|,
248
- "[[&]]")
249
- assert_convert(%Q|<p><a href="aa">aa</a>bb<a href="cc">cc</a></p>\n|,
250
- "[[aa]]bb[[cc]]")
251
- assert_convert(%Q!<p><a href="aa">a|a</a></p>\n!,
252
- "[[a|a|aa]]")
253
- end
254
-
255
- def test_inter_wiki_name
256
- assert_convert("<p><a href=\"scheme:keyword\">scheme:keyword</a></p>\n",
257
- "[[scheme:keyword]]")
258
- assert_convert("<p><a href=\"scheme:keyword\">label</a></p>\n",
259
- "[[label|scheme:keyword]]")
260
- end
261
-
262
- def test_wiki_name
263
- assert_convert("<p><a href=\"WikiName\">WikiName</a></p>\n",
264
- "WikiName")
265
- assert_convert("<p><a href=\"HogeRule1\">HogeRule1</a></p>\n",
266
- "HogeRule1")
267
-
268
- assert_convert("<p><a href=\"WikiName1WikiName2\">WikiName1WikiName2</a></p>\n",
269
- "WikiName1WikiName2")
270
- assert_convert("<p><a href=\"WikiName1\">WikiName1</a> " +
271
- "<a href=\"WikiName2\">WikiName2</a></p>\n",
272
- "WikiName1 WikiName2")
273
-
274
- assert_convert("<p>NOTWIKINAME</p>\n",
275
- "NOTWIKINAME")
276
- assert_convert("<p>NOT_WIKI_NAME</p>\n",
277
- "NOT_WIKI_NAME")
278
- assert_convert("<p>WikiNAME</p>\n",
279
- "WikiNAME")
280
- assert_convert("<p>fooWikiNAME</p>\n",
281
- "fooWikiNAME")
282
-
283
- assert_convert("<p>RSSPage</p>\n",
284
- "RSSPage")
285
- assert_convert("<p><a href=\"RSSPageName\">RSSPageName</a></p>\n",
286
- "RSSPageName")
287
- end
288
-
289
- def test_not_wiki_name
290
- assert_convert("<p>WikiName</p>\n",
291
- "^WikiName")
292
- assert_convert("<p>^<a href=\"WikiName\">WikiName</a></p>\n",
293
- "^WikiName",
294
- :use_not_wiki_name => false)
295
- assert_convert("<p>^WikiName</p>\n",
296
- "^WikiName",
297
- :use_wiki_name => false)
298
- assert_convert("<p>^WikiName</p>\n",
299
- "^WikiName",
300
- :use_wiki_name => false,
301
- :use_not_wiki_name => false)
302
- assert_convert("<p>foo WikiName bar</p>\n",
303
- "foo ^WikiName bar")
304
- end
305
-
306
- def test_use_wiki_name_option
307
- assert_convert("<p><a href=\"WikiName\">WikiName</a></p>\n",
308
- "WikiName")
309
- assert_convert("<p>WikiName</p>\n",
310
- "WikiName",
311
- :use_wiki_name => false)
312
- end
313
-
314
- def test_image_link
315
- assert_convert(%Q|<p><img src="http://hikiwiki.org/img.png" alt="img.png" /></p>\n|,
316
- "[[http://hikiwiki.org/img.png]]")
317
- assert_convert(%Q|<p><a href="http://hikiwiki.org/img.png">http://hikiwiki.org/img.png</a></p>\n|,
318
- "[[http://hikiwiki.org/img.png]]",
319
- :allow_bracket_inline_image => false)
320
-
321
- assert_convert(%Q|<p><img src="http://hikiwiki.org/img.png" alt="img" /></p>\n|,
322
- "[[img|http://hikiwiki.org/img.png]]")
323
- assert_convert(%Q|<p><a href="http://hikiwiki.org/img.png">img</a></p>\n|,
324
- "[[img|http://hikiwiki.org/img.png]]",
325
- :allow_bracket_inline_image => false)
326
- end
327
-
328
- def test_definition
329
- assert_convert("<dl>\n<dt>a</dt>\n<dd>b</dd>\n</dl>\n",
330
- ":a:b")
331
- assert_convert("<dl>\n<dt>a</dt>\n<dd>b\n</dd>\n<dd>c</dd>\n</dl>\n",
332
- ":a:b\n::c")
333
- assert_convert("<dl>\n<dt>a\\</dt>\n<dd>b:c</dd>\n</dl>\n",
334
- ':a\:b:c')
335
- assert_convert("<dl>\n<dt>a</dt>\n<dd>b\\:c</dd>\n</dl>\n",
336
- ':a:b\:c')
337
- assert_convert("<dl>\n<dt>a</dt>\n<dd>b:c</dd>\n</dl>\n",
338
- ":a:b:c")
339
- end
340
-
341
- def test_definition_title_only
342
- assert_convert("<dl>\n<dt>a</dt>\n</dl>\n",
343
- ":a:")
344
- end
345
-
346
- def test_definition_description_only
347
- assert_convert("<dl>\n<dd>b</dd>\n</dl>\n",
348
- "::b")
349
- end
350
-
351
- def test_definition_with_link
352
- assert_convert("<dl>\n<dt><a href=\"http://hikiwiki.org/\">Hiki</a></dt>\n" +
353
- "<dd>Website</dd>\n</dl>\n",
354
- ":[[Hiki|http://hikiwiki.org/]]:Website")
355
- assert_convert("<dl>\n<dt>a</dt>\n" +
356
- "<dd><a href=\"http://hikiwiki.org/\">Hiki</a></dd>\n" +
357
- "</dl>\n",
358
- ":a:[[Hiki|http://hikiwiki.org/]]")
359
- end
360
-
361
- def test_definition_with_modifier
362
- assert_convert("<dl>\n<dt><strong>foo</strong></dt>\n" +
363
- "<dd>bar</dd>\n</dl>\n",
364
- ":'''foo''':bar")
365
- assert_convert("<dl>\n<dt>foo</dt>\n" +
366
- "<dd><strong>bar</strong></dd>\n</dl>\n",
367
- ":foo:'''bar'''")
368
- assert_convert("<dl>\n<dt>foo</dt>\n" +
369
- "<dd><tt>bar</tt></dd>\n</dl>\n",
370
- ":foo:``bar``")
371
- end
372
-
373
- def test_definition_with_modifier_link
374
- assert_convert("<dl>\n<dt>" +
375
- "<strong><a href=\"http://hikiwiki.org/\">Hiki</a></strong>" +
376
- "</dt>\n<dd>Website</dd>\n</dl>\n",
377
- ":'''[[Hiki|http://hikiwiki.org/]]''':Website")
378
- assert_convert("<dl>\n<dt>Website</dt>\n<dd>" +
379
- "<strong><a href=\"http://hikiwiki.org/\">Hiki</a></strong>" +
380
- "</dd>\n</dl>\n",
381
- ":Website:'''[[Hiki|http://hikiwiki.org/]]'''")
382
- assert_convert("<dl>\n<dt>Website</dt>\n<dd>" +
383
- "<tt><a href=\"http://hikiwiki.org/\">Hiki</a></tt>" +
384
- "</dd>\n</dl>\n",
385
- ":Website:``[[Hiki|http://hikiwiki.org/]]``")
386
- end
387
-
388
- def test_table
389
- assert_convert(%Q|<table border=\"1\">\n<tr><td>a</td><td>b</td></tr>\n</table>\n|,
390
- "||a||b")
391
- assert_convert(%Q|<table border=\"1\">\n<tr><td>a</td><td>b</td></tr>\n</table>\n|,
392
- "||a||b||")
393
- assert_convert(%Q|<table border=\"1\">\n<tr><td>a</td><td>b</td></tr>\n</table>\n|,
394
- "||a||b||")
395
- assert_convert(%Q|<table border=\"1\">\n<tr><td>a</td><td>b</td><td> </td></tr>\n</table>\n|,
396
- "||a||b|| ")
397
- assert_convert(%Q|<table border=\"1\">\n<tr><th>a</th><td>b</td></tr>\n</table>\n|,
398
- "||!a||b||")
399
- assert_convert(%Q|<table border=\"1\">\n<tr><td colspan=\"2\">1</td><td rowspan=\"2\">2\n</td></tr>\n<tr><td rowspan=\"2\">3</td><td>4\n</td></tr>\n<tr><td colspan=\"2\">5</td></tr>\n</table>\n|,
400
- "||>1||^2\n||^3||4\n||>5")
401
- assert_convert(%Q|<table border=\"1\">\n<tr><td>a</td><td>b</td><td>c</td></tr>\n<tr><td></td><td></td><td></td></tr>\n<tr><td>d</td><td>e</td><td>f</td></tr>\n</table>\n|,
402
- "||a||b||c||\n||||||||\n||d||e||f||")
403
- end
404
-
405
- def test_table_with_modifier
406
- assert_convert("<table border=\"1\">\n<tr><td>'''</td><td>'''</td><td>bar</td></tr>\n</table>\n",
407
- "||'''||'''||bar")
408
- assert_convert("<table border=\"1\">\n<tr><td>'''\\</td><td>'''</td><td>bar</td></tr>\n</table>\n",
409
- "||'''\\||'''||bar")
410
- end
411
-
412
- def test_modifier
413
- assert_convert("<p><strong>foo</strong></p>\n",
414
- "'''foo'''")
415
- assert_convert("<p><em>foo</em></p>\n",
416
- "''foo''")
417
- assert_convert("<p><del>foo</del></p>\n",
418
- "==foo==")
419
- assert_convert("<p><em>foo==bar</em>baz==</p>\n",
420
- "''foo==bar''baz==")
421
- assert_convert("<p><strong>foo</strong> and <strong>bar</strong></p>\n",
422
- "'''foo''' and '''bar'''")
423
- assert_convert("<p><em>foo</em> and <em>bar</em></p>\n",
424
- "''foo'' and ''bar''")
425
- assert_convert("<p><tt>foo</tt></p>\n",
426
- "``foo``")
427
- assert_convert("<p><tt>foo==bar</tt>baz==</p>\n",
428
- "``foo==bar``baz==")
429
- end
430
-
431
- def test_nested_modifier
432
- assert_convert("<p><em><del>foo</del></em></p>\n",
433
- "''==foo==''")
434
- assert_convert("<p><del><em>foo</em></del></p>\n",
435
- "==''foo''==")
436
- end
437
-
438
- def test_modifier_and_link
439
- assert_convert("<p><a href=\"http://hikiwiki.org/\"><strong>Hiki</strong></a></p>\n",
440
- "[['''Hiki'''|http://hikiwiki.org/]]")
441
- assert_convert("<p><strong><a href=\"http://hikiwiki.org/\">Hiki</a></strong></p>\n",
442
- "'''[[Hiki|http://hikiwiki.org/]]'''")
443
- assert_convert("<p><tt><a href=\"http://hikiwiki.org/\">Hiki</a></tt></p>\n",
444
- "``[[Hiki|http://hikiwiki.org/]]``")
445
- end
446
-
447
- def test_pre_and_plugin
448
- assert_convert(%Q|<pre>{{hoge}}</pre>\n|,
449
- " {{hoge}}")
450
- assert_convert(%Q|<pre>{{hoge}}</pre>\n|,
451
- "<<<\n{{hoge}}\n>>>")
452
- assert_convert("<div class=\"plugin\">{{foo\n 1}}</div>\n",
453
- "{{foo\n 1}}")
454
- end
455
-
456
- def test_plugin_in_modifier
457
- assert_convert("<p><strong><span class=\"plugin\">{{foo}}</span></strong></p>\n",
458
- "'''{{foo}}'''")
459
- assert_convert("<p><tt><span class=\"plugin\">{{foo}}</span></tt></p>\n",
460
- "``{{foo}}``")
461
- end
462
-
463
- def test_syntax_ruby
464
- if Object.const_defined?(:Syntax)
465
- assert_convert("<pre><span class=\"keyword\">class </span><span class=\"class\">A</span>\n <span class=\"keyword\">def </span><span class=\"method\">foo</span><span class=\"punct\">(</span><span class=\"ident\">bar</span><span class=\"punct\">)</span>\n <span class=\"keyword\">end</span>\n<span class=\"keyword\">end</span></pre>\n",
466
- "<<< ruby\nclass A\n def foo(bar)\n end\nend\n>>>")
467
- assert_convert("<pre><span class=\"keyword\">class </span><span class=\"class\">A</span>\n <span class=\"keyword\">def </span><span class=\"method\">foo</span><span class=\"punct\">(</span><span class=\"ident\">bar</span><span class=\"punct\">)</span>\n <span class=\"keyword\">end</span>\n<span class=\"keyword\">end</span></pre>\n",
468
- "<<< Ruby\nclass A\n def foo(bar)\n end\nend\n>>>")
469
- assert_convert("<pre><span class=\"punct\">'</span><span class=\"string\">a&lt;&quot;&gt;b</span><span class=\"punct\">'</span></pre>\n",
470
- "<<< ruby\n'a<\">b'\n>>>")
471
-
472
- # redefine method for below tests
473
- class << Syntax::Convertors::HTML
474
- def for_syntax(syntax)
475
- raise
476
- end
477
- end
478
- end
479
-
480
- # use google-code-prettify
481
- assert_convert("<pre class=\"prettyprint\">class A\n def foo(bar)\n end\nend</pre>\n",
482
- "<<< ruby\nclass A\n def foo(bar)\n end\nend\n>>>")
483
- assert_convert("<pre class=\"prettyprint\">class A\n def foo(bar)\n end\nend</pre>\n",
484
- "<<< Ruby\nclass A\n def foo(bar)\n end\nend\n>>>")
485
- assert_convert("<pre class=\"prettyprint\">'a&lt;\"&gt;b'</pre>\n",
486
- "<<< ruby\n'a<\">b'\n>>>")
487
- end
488
-
489
- def test_plugin_in_pre_with_header
490
- assert_convert("<h1>Title</h1>\n<pre>{{_/a:a}}</pre>\n",
491
- "! Title\n {{_/a:a}}")
492
- assert_convert("<h1>Title</h1>\n<pre>{{_/a:a}}\n{{_/a:a}}</pre>\n",
493
- "! Title\n {{_/a:a}}\n {{_/a:a}}")
494
- end
495
-
496
- private
497
- def assert_convert(expected, markup, options={}, message=nil)
498
- assert_equal(expected, HikiDoc.to_xhtml(markup, options), message)
499
- end
500
-
501
- def custom_valid_plugin_syntax?(code)
502
- eval("BEGIN {return true}\n#{code}", nil, "(plugin)", 0)
503
- rescue SyntaxError
504
- false
505
- end
506
- end