docgenerator-creole 3.0.0

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 (221) hide show
  1. checksums.yaml +7 -0
  2. data/examples/creole_example.rb +76 -0
  3. data/examples/creole_example_footnote.rb +66 -0
  4. data/examples/creole_example_new_plugin.rb +51 -0
  5. data/examples/creole_example_placeholder.rb +77 -0
  6. data/examples/creole_example_rail.rb +155 -0
  7. data/examples/creole_example_rubycode.rb +144 -0
  8. data/examples/creole_example_struktex.rb +170 -0
  9. data/examples/creole_example_tabular.rb +96 -0
  10. data/examples/creole_example_tikz.rb +47 -0
  11. data/lib/docgenerator-creole.rb +5 -0
  12. data/lib/docgenerator/creole.rb +15 -0
  13. data/lib/docgenerator/creole/base.rb +170 -0
  14. data/lib/docgenerator/creole/characters.rb +131 -0
  15. data/lib/docgenerator/creole/creole.rb +708 -0
  16. data/lib/docgenerator/creole/document.rb +91 -0
  17. data/lib/docgenerator/creole/inclusion_and_plugins.rb +91 -0
  18. data/lib/docgenerator/creole/inclusions.rb +148 -0
  19. data/lib/docgenerator/creole/placeholder.rb +242 -0
  20. data/lib/docgenerator/creole/plugins.rb +230 -0
  21. data/lib/docgenerator/creole/plugins/index.rb +61 -0
  22. data/lib/docgenerator/creole/plugins/rail.rb +179 -0
  23. data/lib/docgenerator/creole/plugins/rubycode4creole.rb +136 -0
  24. data/lib/docgenerator/creole/plugins/struktex.rb +60 -0
  25. data/lib/docgenerator/creole/plugins/tikz.rb +93 -0
  26. data/lib/docgenerator/creole/plugins/todonotes.rb +77 -0
  27. data/lib/docgenerator/creole/tabular.rb +405 -0
  28. data/readme.rdoc +44 -0
  29. data/unittest/Red_Flower.jpg +0 -0
  30. data/unittest/expected_creole/test_creole.html +3 -0
  31. data/unittest/expected_creole/test_creole_characters_all.creole +28 -0
  32. data/unittest/expected_creole/test_creole_characters_all.html +18 -0
  33. data/unittest/expected_creole/test_creole_characters_all.latex +36 -0
  34. data/unittest/expected_creole/test_creole_characters_special.html +10 -0
  35. data/unittest/expected_creole/test_creole_characters_special.latex +18 -0
  36. data/unittest/expected_creole/test_creole_comment.context +11 -0
  37. data/unittest/expected_creole/test_creole_comment.creole +12 -0
  38. data/unittest/expected_creole/test_creole_comment.html +9 -0
  39. data/unittest/expected_creole/test_creole_comment.latex +11 -0
  40. data/unittest/expected_creole/test_creole_countdown.html +3 -0
  41. data/unittest/expected_creole/test_creole_countdown.latex +4 -0
  42. data/unittest/expected_creole/test_creole_creole1.0test.html +182 -0
  43. data/unittest/expected_creole/test_creole_creole1.0test.latex +253 -0
  44. data/unittest/expected_creole/test_creole_creole1.0test.text +160 -0
  45. data/unittest/expected_creole/test_creole_footnotes.html +9 -0
  46. data/unittest/expected_creole/test_creole_footnotes.latex +14 -0
  47. data/unittest/expected_creole/test_creole_footnotes_groupid.html +15 -0
  48. data/unittest/expected_creole/test_creole_footnotes_label.html +9 -0
  49. data/unittest/expected_creole/test_creole_headings.html +17 -0
  50. data/unittest/expected_creole/test_creole_headings.latex +19 -0
  51. data/unittest/expected_creole/test_creole_headings.text +48 -0
  52. data/unittest/expected_creole/test_creole_headings.wiki +37 -0
  53. data/unittest/expected_creole/test_creole_hr.html +7 -0
  54. data/unittest/expected_creole/test_creole_hr.latex +9 -0
  55. data/unittest/expected_creole/test_creole_hr.text +4 -0
  56. data/unittest/expected_creole/test_creole_ignore.html +3 -0
  57. data/unittest/expected_creole/test_creole_ignore.latex +4 -0
  58. data/unittest/expected_creole/test_creole_ignore.text +2 -0
  59. data/unittest/expected_creole/test_creole_inline.html +3 -0
  60. data/unittest/expected_creole/test_creole_inline.latex +4 -0
  61. data/unittest/expected_creole/test_creole_inline.text +2 -0
  62. data/unittest/expected_creole/test_creole_inline_apostroph.html +7 -0
  63. data/unittest/expected_creole/test_creole_inline_apostroph.latex +9 -0
  64. data/unittest/expected_creole/test_creole_inline_apostroph.text +5 -0
  65. data/unittest/expected_creole/test_creole_inline_ruby.html +12 -0
  66. data/unittest/expected_creole/test_creole_inline_ruby.latex +20 -0
  67. data/unittest/expected_creole/test_creole_inline_ruby_raw.html +6 -0
  68. data/unittest/expected_creole/test_creole_inline_ruby_raw.latex +8 -0
  69. data/unittest/expected_creole/test_creole_input.normsource +22 -0
  70. data/unittest/expected_creole/test_creole_input.normsource_1.8 +23 -0
  71. data/unittest/expected_creole/test_creole_input_file_simple.html +15 -0
  72. data/unittest/expected_creole/test_creole_input_file_simple_readlines.html +15 -0
  73. data/unittest/expected_creole/test_creole_label.html +12 -0
  74. data/unittest/expected_creole/test_creole_label.latex +15 -0
  75. data/unittest/expected_creole/test_creole_line_break.html +6 -0
  76. data/unittest/expected_creole/test_creole_line_break.latex +8 -0
  77. data/unittest/expected_creole/test_creole_links_explicit_internal.html +6 -0
  78. data/unittest/expected_creole/test_creole_links_explicit_internal.text +4 -0
  79. data/unittest/expected_creole/test_creole_links_explicit_with_em.html +3 -0
  80. data/unittest/expected_creole/test_creole_links_explicit_with_em.latex +4 -0
  81. data/unittest/expected_creole/test_creole_links_explicit_with_em.text +2 -0
  82. data/unittest/expected_creole/test_creole_links_external.html +6 -0
  83. data/unittest/expected_creole/test_creole_links_external.latex +8 -0
  84. data/unittest/expected_creole/test_creole_links_external.text +4 -0
  85. data/unittest/expected_creole/test_creole_links_external_implicit.html +9 -0
  86. data/unittest/expected_creole/test_creole_links_external_implicit.latex +12 -0
  87. data/unittest/expected_creole/test_creole_links_external_implicit.text +6 -0
  88. data/unittest/expected_creole/test_creole_links_file.html +6 -0
  89. data/unittest/expected_creole/test_creole_links_file.latex +8 -0
  90. data/unittest/expected_creole/test_creole_links_file.text +4 -0
  91. data/unittest/expected_creole/test_creole_links_implicit_end.creole +4 -0
  92. data/unittest/expected_creole/test_creole_links_implicit_end.html +3 -0
  93. data/unittest/expected_creole/test_creole_links_implicit_end.latex +4 -0
  94. data/unittest/expected_creole/test_creole_list_ol.html +12 -0
  95. data/unittest/expected_creole/test_creole_list_ol.latex +22 -0
  96. data/unittest/expected_creole/test_creole_list_ol_after_ul.html +12 -0
  97. data/unittest/expected_creole/test_creole_list_ol_after_ul.latex +20 -0
  98. data/unittest/expected_creole/test_creole_list_ol_after_ul.text +6 -0
  99. data/unittest/expected_creole/test_creole_list_ol_ul.html +15 -0
  100. data/unittest/expected_creole/test_creole_list_ol_ul.latex +26 -0
  101. data/unittest/expected_creole/test_creole_list_ul.html +22 -0
  102. data/unittest/expected_creole/test_creole_list_ul.latex +40 -0
  103. data/unittest/expected_creole/test_creole_list_ul.normsource +85 -0
  104. data/unittest/expected_creole/test_creole_list_ul.normsource_1.8 +83 -0
  105. data/unittest/expected_creole/test_creole_list_ul_too_much.html +24 -0
  106. data/unittest/expected_creole/test_creole_list_ul_too_much.latex +44 -0
  107. data/unittest/expected_creole/test_creole_list_ulul_without_ul.html +6 -0
  108. data/unittest/expected_creole/test_creole_list_ulul_without_ul.latex +12 -0
  109. data/unittest/expected_creole/test_creole_mix_titles_list.html +10 -0
  110. data/unittest/expected_creole/test_creole_mix_titles_list.latex +18 -0
  111. data/unittest/expected_creole/test_creole_mix_titles_list.text +12 -0
  112. data/unittest/expected_creole/test_creole_newline.html +9 -0
  113. data/unittest/expected_creole/test_creole_newline.latex +11 -0
  114. data/unittest/expected_creole/test_creole_newline.text +7 -0
  115. data/unittest/expected_creole/test_creole_paragraphs.html +6 -0
  116. data/unittest/expected_creole/test_creole_paragraphs.latex +8 -0
  117. data/unittest/expected_creole/test_creole_paragraphs.normsource +26 -0
  118. data/unittest/expected_creole/test_creole_paragraphs.normsource_1.8 +27 -0
  119. data/unittest/expected_creole/test_creole_paragraphs.text +4 -0
  120. data/unittest/expected_creole/test_creole_paragraphs.wiki +4 -0
  121. data/unittest/expected_creole/test_creole_paragraphs_wrap.html +5 -0
  122. data/unittest/expected_creole/test_creole_paragraphs_wrap.latex +6 -0
  123. data/unittest/expected_creole/test_creole_paragraphs_wrap.text +4 -0
  124. data/unittest/expected_creole/test_creole_paragraphs_wrap.wiki +4 -0
  125. data/unittest/expected_creole/test_creole_paragraphs_wrap0.html +9 -0
  126. data/unittest/expected_creole/test_creole_paragraphs_wrap0.latex +11 -0
  127. data/unittest/expected_creole/test_creole_paragraphs_wrap0.text +7 -0
  128. data/unittest/expected_creole/test_creole_paragraphs_wrap0.wiki +7 -0
  129. data/unittest/expected_creole/test_creole_paragraphs_wrap60.html +5 -0
  130. data/unittest/expected_creole/test_creole_paragraphs_wrap60.latex +6 -0
  131. data/unittest/expected_creole/test_creole_paragraphs_wrap60.text +4 -0
  132. data/unittest/expected_creole/test_creole_paragraphs_wrap60.wiki +4 -0
  133. data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.html +5 -0
  134. data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.latex +6 -0
  135. data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.text +4 -0
  136. data/unittest/expected_creole/test_creole_paragraphs_wrap_with_linebreaks.wiki +4 -0
  137. data/unittest/expected_creole/test_creole_picture_link.html +6 -0
  138. data/unittest/expected_creole/test_creole_pictures.html +10 -0
  139. data/unittest/expected_creole/test_creole_pictures.latex +13 -0
  140. data/unittest/expected_creole/test_creole_pictures_css.html +6 -0
  141. data/unittest/expected_creole/test_creole_pictures_css.latex +8 -0
  142. data/unittest/expected_creole/test_creole_pictures_imgclass.html +6 -0
  143. data/unittest/expected_creole/test_creole_pictures_imgclass.latex +8 -0
  144. data/unittest/expected_creole/test_creole_pictures_longdesc.html +3 -0
  145. data/unittest/expected_creole/test_creole_pictures_width.html +3 -0
  146. data/unittest/expected_creole/test_creole_pictures_width.latex +4 -0
  147. data/unittest/expected_creole/test_creole_placeholders_html.html +7 -0
  148. data/unittest/expected_creole/test_creole_placeholders_html.latex +8 -0
  149. data/unittest/expected_creole/test_creole_placeholders_html.text +4 -0
  150. data/unittest/expected_creole/test_creole_placeholders_latex.html +6 -0
  151. data/unittest/expected_creole/test_creole_placeholders_latex.latex +9 -0
  152. data/unittest/expected_creole/test_creole_placeholders_latex.text +4 -0
  153. data/unittest/expected_creole/test_creole_short_html.html +3 -0
  154. data/unittest/expected_creole/test_creole_short_html.latex +4 -0
  155. data/unittest/expected_creole/test_creole_short_html.text +2 -0
  156. data/unittest/expected_creole/test_creole_shy.creole +6 -0
  157. data/unittest/expected_creole/test_creole_shy.html +6 -0
  158. data/unittest/expected_creole/test_creole_shy.latex +8 -0
  159. data/unittest/expected_creole/test_creole_shy.text +4 -0
  160. data/unittest/expected_creole/test_creole_tabular.creole +22 -0
  161. data/unittest/expected_creole/test_creole_tabular.html +20 -0
  162. data/unittest/expected_creole/test_creole_tabular.latex +22 -0
  163. data/unittest/expected_creole/test_creole_tabular_creole.creole +21 -0
  164. data/unittest/expected_creole/test_creole_tabular_creole.html +20 -0
  165. data/unittest/expected_creole/test_creole_tabular_creole.latex +21 -0
  166. data/unittest/expected_creole/test_creole_tabular_css.creole +24 -0
  167. data/unittest/expected_creole/test_creole_tabular_css.html +20 -0
  168. data/unittest/expected_creole/test_creole_tabular_css.latex +22 -0
  169. data/unittest/expected_creole/test_creole_tabular_multicols.creole +16 -0
  170. data/unittest/expected_creole/test_creole_tabular_multicols.html +14 -0
  171. data/unittest/expected_creole/test_creole_tabular_multicols.latex +16 -0
  172. data/unittest/expected_creole/test_creole_tabular_row_parameters.latex +22 -0
  173. data/unittest/expected_creole/test_creole_tabular_with_cell_option.creole +21 -0
  174. data/unittest/expected_creole/test_creole_tabular_with_cell_option.html +20 -0
  175. data/unittest/expected_creole/test_creole_toc.html +13 -0
  176. data/unittest/expected_creole/test_creole_toc.latex +22 -0
  177. data/unittest/expected_creole/test_creole_toc.text +4 -0
  178. data/unittest/expected_creole/test_creole_toc_level.html +7 -0
  179. data/unittest/expected_creole/test_creole_toc_level.latex +10 -0
  180. data/unittest/expected_creole/test_creole_toc_level.text +3 -0
  181. data/unittest/expected_creole/test_creole_toc_level_text.html +8 -0
  182. data/unittest/expected_creole/test_creole_toc_level_text.latex +9 -0
  183. data/unittest/expected_creole/test_creole_toc_text.html +5 -0
  184. data/unittest/expected_creole/test_creole_toc_text.latex +5 -0
  185. data/unittest/expected_creole/test_creole_ul_multiple_line.html +7 -0
  186. data/unittest/expected_creole/test_creole_ul_multiple_line.latex +14 -0
  187. data/unittest/expected_creole/test_creole_ul_with_blank.html +11 -0
  188. data/unittest/expected_creole/test_creole_ul_with_blank.latex +20 -0
  189. data/unittest/expected_creole/test_creole_ul_with_bold.creole +0 -0
  190. data/unittest/expected_creole/test_creole_ul_with_bold.html +11 -0
  191. data/unittest/expected_creole/test_creole_ul_with_bold.latex +18 -0
  192. data/unittest/expected_creole/test_creole_ul_with_bold.text +7 -0
  193. data/unittest/expected_creole/test_creole_verbatim.html +25 -0
  194. data/unittest/expected_creole/test_creole_verbatim.latex +33 -0
  195. data/unittest/expected_creole/test_creole_verbatim.text +17 -0
  196. data/unittest/expected_creole/test_creole_verbatim_inline.html +6 -0
  197. data/unittest/expected_creole/test_creole_verbatim_inline.latex +8 -0
  198. data/unittest/expected_creole/test_creole_verbatim_inline_at_start.html +6 -0
  199. data/unittest/expected_creole/test_creole_verbatim_inline_at_start.latex +8 -0
  200. data/unittest/expected_creole_rail/test_rail_creole_object.tex +33 -0
  201. data/unittest/expected_creole_rail/test_rail_creole_placeholder.tex +40 -0
  202. data/unittest/expected_rubycode4doc/creole_complete.html +26 -0
  203. data/unittest/expected_rubycode4doc/creole_complete.tex +40 -0
  204. data/unittest/expected_rubycode4doc/creole_in_tab.html +4 -0
  205. data/unittest/expected_rubycode4doc/creole_in_tab.tex +6 -0
  206. data/unittest/expected_rubycode4doc/creole_inline_ruby.html +7 -0
  207. data/unittest/expected_rubycode4doc/creole_output.html +2 -0
  208. data/unittest/expected_rubycode4doc/creole_output.tex +4 -0
  209. data/unittest/expected_rubycode4doc/creole_rubycode.html +1 -0
  210. data/unittest/expected_rubycode4doc/creole_rubycode.tex +3 -0
  211. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.html +1 -0
  212. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated.tex +3 -0
  213. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.html +3 -0
  214. data/unittest/expected_rubycode4doc/creole_rubycode_evaluated_listings.tex +5 -0
  215. data/unittest/unittest_creole.rb +1379 -0
  216. data/unittest/unittest_creole_placeholders.rb +161 -0
  217. data/unittest/unittest_creole_plugin_rail.rb +148 -0
  218. data/unittest/unittest_creole_plugin_rubycode4doc.rb +123 -0
  219. data/unittest/unittest_creole_plugin_struktex.rb +26 -0
  220. data/unittest/unittest_creole_tabular.rb +212 -0
  221. metadata +529 -0
@@ -0,0 +1,6 @@
1
+ <p >
2
+ Short verbatim can also be at the start: <span style = "display: inline;white-space:pre;font-family:monospace">this is verbatim</span>
3
+ </p>
4
+ <p >
5
+ This test checks, if the differences of normal verbatim is detected.
6
+ </p>
@@ -0,0 +1,8 @@
1
+
2
+
3
+ Short verbatim can also be at the start: \verb|this is verbatim|
4
+
5
+
6
+
7
+ This test checks, if the differences of normal verbatim is detected.
8
+
@@ -0,0 +1,33 @@
1
+ <<prefix>>
2
+ \documentclass[ngerman]{scrartcl}
3
+ \usepackage{babel}
4
+ \usepackage[ansinew]{inputenc}
5
+ \usepackage{hyperref}
6
+ % ----------------------------------------------------------------
7
+ \usepackage{rail}
8
+
9
+ \title{Rail-Diagramms in Creole}
10
+ \hypersetup{pdftitle={Rail-Diagramms in Creole}}
11
+
12
+ % ----------------------------------------------------------------
13
+ \begin{document}
14
+ \section{Rail-Diagramms}
15
+ \subsection{Via Ruby-object}
16
+
17
+
18
+ %
19
+ % Define a rail-diagramm block
20
+ %
21
+ \begin{rail}
22
+ block :
23
+ ( lbrace | 'begin' )
24
+ ( ( '|' ( variable + ',' ) '|' ) | [Keine Blockvariablen] )
25
+ comm
26
+ ( rbrace | 'end' )
27
+ ;
28
+ \end{rail}
29
+
30
+
31
+
32
+ \end{document}
33
+ % ----------------------------------------------------------------
@@ -0,0 +1,40 @@
1
+ <<prefix>>
2
+ \documentclass[ngerman]{scrartcl}
3
+ \usepackage{babel}
4
+ \usepackage[ansinew]{inputenc}
5
+ \usepackage{hyperref}
6
+ % ----------------------------------------------------------------
7
+ \usepackage{rail}
8
+
9
+ \title{Rail-Diagramms in Creole}
10
+ \hypersetup{pdftitle={Rail-Diagramms in Creole}}
11
+
12
+ % ----------------------------------------------------------------
13
+ \begin{document}
14
+ \section{Rail-Diagramms}
15
+ \subsection{Via Placeholder}
16
+ %
17
+ % Define a rail-diagramm test
18
+ %
19
+ \begin{rail}
20
+ test :
21
+ [1] (
22
+ ( '[' string ']' )
23
+ ? body[2--6] + '|'
24
+ )
25
+ | [2] body[3--6] '*' body[5--6]
26
+ | [2] body[3--6] '+' body[5--6]
27
+ | [3] ( body[4--5] + )
28
+ | [4] body[5] '?'
29
+ | [5] identifier ( '[' string ']' ) ?
30
+ | [5] quote string quote
31
+ | [5] dquote string dquote
32
+ | [5] '(' body[1--6] ')'
33
+ | [5] cr
34
+ | [6]
35
+ ;
36
+ ;
37
+ \end{rail}
38
+
39
+ \end{document}
40
+ % ----------------------------------------------------------------
@@ -0,0 +1,26 @@
1
+ <p >
2
+ rubycode
3
+ </p>
4
+ <pre style = "rubycode" >1 + 1</pre>
5
+ <hr />
6
+ <p >
7
+ rubycode_output
8
+ </p>
9
+ <pre style = "rubycode_output" >2</pre>
10
+ <hr />
11
+ <p >
12
+ rubycode_evaluated
13
+ </p>
14
+ <pre style = "rubycode_evaluated" >1 + 1 # -&gt; 2 </pre>
15
+ <hr />
16
+ <p >
17
+ rubycode_in_tab
18
+ </p>
19
+
20
+ <table border = "1" ><tr style = "border-bottom-style: solid;border-bottom-width: medium;" ><td >No</td><td >Code</td><td >Result</td><td >Output</td><td >Output2</td></tr>
21
+ <tr ><td >1</td><td ><pre class = "rubycode" >1 + 1</pre></td><td >2</td><td ></td><td ><pre class = "ruby_result" ></pre></td></tr>
22
+ </table>
23
+ <hr />
24
+ <pre class = "rubycode_with_result" >
25
+ 1 + 1 # -> 2
26
+ </pre>
@@ -0,0 +1,40 @@
1
+
2
+
3
+ rubycode
4
+
5
+
6
+ \begin{verbatim}1 + 1\end{verbatim}
7
+
8
+ \hrulefill
9
+
10
+
11
+ rubycode\_output
12
+
13
+
14
+ \begin{verbatim}2\end{verbatim}
15
+
16
+ \hrulefill
17
+
18
+
19
+ rubycode\_evaluated
20
+
21
+
22
+ \begin{verbatim}1 + 1 # -> 2 \end{verbatim}
23
+
24
+ \hrulefill
25
+
26
+
27
+ rubycode\_in\_tab
28
+
29
+
30
+ \begin{tabular}{lp{3cm}llp{3cm}}No & Code & Result & Output & Output2\\\hline
31
+ 1 & \lstinline[]!1 + 1! & 2 & &
32
+ \begin{verbatim}\end{verbatim}
33
+ \\
34
+ \end{tabular}
35
+ \hrulefill
36
+
37
+ \begin{lstlisting}[numbers={left}, numberstyle={\tiny}]
38
+ 1 + 1 # -> 2
39
+ \end{lstlisting}
40
+
@@ -0,0 +1,4 @@
1
+
2
+ <table border = "1" ><tr style = "border-bottom-style: solid;border-bottom-width: medium;" ><td >No</td><td >Code</td><td >Result</td><td >Output</td><td >Output2</td></tr>
3
+ <tr ><td >1</td><td ><pre class = "rubycode" >1 + 1</pre></td><td >2</td><td ></td><td ><pre class = "ruby_result" ></pre></td></tr>
4
+ </table>
@@ -0,0 +1,6 @@
1
+
2
+ \begin{tabular}{lp{3cm}llp{3cm}}No & Code & Result & Output & Output2\\\hline
3
+ 1 & \lstinline[]!1 + 1! & 2 & &
4
+ \begin{verbatim}\end{verbatim}
5
+ \\
6
+ \end{tabular}
@@ -0,0 +1,7 @@
1
+ <ul >
2
+ <li >1 + 1 = <p >
3
+ 2
4
+ </p>
5
+ </li>
6
+ <li >1 + 1 = 2 </li>
7
+ </ul>
@@ -0,0 +1,2 @@
1
+ <pre style = "rubycode_output" >
2
+ 3</pre>
@@ -0,0 +1,4 @@
1
+
2
+ \begin{verbatim}
3
+ 3\end{verbatim}
4
+
@@ -0,0 +1 @@
1
+ <pre style = "rubycode" >1 + 1</pre>
@@ -0,0 +1,3 @@
1
+
2
+ \begin{verbatim}1 + 1\end{verbatim}
3
+
@@ -0,0 +1 @@
1
+ <pre style = "rubycode_evaluated" >1 + 1 # -&gt; 2 </pre>
@@ -0,0 +1,3 @@
1
+
2
+ \begin{verbatim}1 + 1 # -> 2 \end{verbatim}
3
+
@@ -0,0 +1,3 @@
1
+ <pre class = "rubycode_with_result" >
2
+ 1 + 1 # -> 2
3
+ </pre>
@@ -0,0 +1,5 @@
1
+
2
+ \begin{lstlisting}[numbers={left}, numberstyle={\tiny}]
3
+ 1 + 1 # -> 2
4
+ \end{lstlisting}
5
+
@@ -0,0 +1,1379 @@
1
+ # encoding: cp1252
2
+ if $0 == __FILE__
3
+ $:.unshift("../lib")
4
+ $:.unshift('../../docgenerator/lib')
5
+ end
6
+
7
+ #~ ARGV << '-n' << 'test_creole_paragraphs_wrap_with_linebreaks'
8
+
9
+
10
+ gem 'minitest-filecontent'
11
+ require 'minitest/filecontent.rb'
12
+
13
+ #~ require 'docgenerator.rb'
14
+ require 'docgenerator-creole.rb'
15
+
16
+ #~ Docgenerator.trace_on
17
+
18
+ <<missingtests
19
+ see Text and
20
+ description
21
+ labels
22
+
23
+ <<ruby>>
24
+
25
+ Creole_document
26
+ *content mit level..., \tableofcontents...
27
+
28
+ Bug:
29
+ http://... am Ende ohne folgenden Text wird falsch erkannt.
30
+ --> test_creole_links_implicit_end()
31
+ missingtests
32
+
33
+ #thisfile is needed to avoid different values of $thisfile
34
+ #(Running stand alone it's the filename, with require it's './<<filename>>'
35
+ $thisfile = File.basename(__FILE__)
36
+
37
+ class Docgenerator::Creole::Creole
38
+ #Access to the options.
39
+ attr_reader :options
40
+ end
41
+
42
+ require 'yaml'
43
+ require 'log4r'
44
+ #
45
+ #Warn -> report missing important test
46
+ #Info -> report missing test
47
+
48
+ $log = Log4r::Logger.new('Unittest creole', Log4r::ERROR)
49
+ #~ $log = Log4r::Logger.new('Unittest creole', Log4r::WARN)
50
+ #~ $log = Log4r::Logger.new('Unittest creole', Log4r::INFO)
51
+ $log.outputters = Log4r::StdoutOutputter.new('log_stdout')
52
+
53
+ #Logger to catch unwanted messages
54
+ $tmplog = Log4r::Logger.new('Creole', Log4r::FATAL)
55
+
56
+ class Test_creole_basics < MiniTest::Test
57
+ def setup()
58
+ #Avoid warnings about missing logger in to_doc
59
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
60
+ end
61
+ #Test some basic definitions.
62
+ def test_creole_initialize()
63
+ creole = Docgenerator::Creole::Creole.new(
64
+ :content => 'test'
65
+ )
66
+ assert_instance_of( Log4r::Logger, creole.log)
67
+ assert_equal( Log4r::INFO, creole.log.level, "Default Level of Default-Logger (creole.log) changed:")
68
+ assert_instance_of( Log4r::StdoutOutputter, creole.log.outputters.first)
69
+ #~ assert_equal( Log4r::DEBUG, creole.log.outputters.first.level)
70
+ assert_equal( creole.options[:wrap_at], 75 )
71
+ end
72
+ # Get some content and check the content.
73
+ def test_creole_input_string()
74
+ source = <<creole
75
+ Text,
76
+ more Text.
77
+ And some more text.
78
+
79
+ A new paragraph.
80
+ creole
81
+ creole = Docgenerator::Creole::Creole.new(:content => source )
82
+ assert_equal( [source], creole.source)
83
+
84
+ #ruby 1.8: symbols as key, ruby 1.9: Strings
85
+ #~ omit_if( RUBY_VERSION !~ /1.9/, "Wrong ruby version #{RUBY_VERSION}"){
86
+ assert_equal_filecontent( "expected_creole/test_creole_input.normsource", creole.normsource.to_yaml)
87
+ #~ }
88
+
89
+ creole = Docgenerator::Creole::Creole.new(:content => source )
90
+ creole = Docgenerator::Creole::Creole.new()
91
+ creole << source
92
+ creole << source
93
+ assert_equal( [source, source], creole.source)
94
+ end
95
+ def test_creole_input_array()
96
+
97
+ creole = Docgenerator::Creole::Creole.new(:content => [ "Text1", "Text2" ] )
98
+ assert_equal( ["Text1\nText2"], creole.source)
99
+
100
+ creole = Docgenerator::Creole::Creole.new(:content => [ "Text1\n", "Text2" ] )
101
+ assert_equal( ["Text1\nText2"], creole.source)
102
+
103
+ #Leading spaces keep staying
104
+ creole = Docgenerator::Creole::Creole.new(:content => [ " Text1\n", "Text2" ] )
105
+ assert_equal( [" Text1\nText2"], creole.source)
106
+
107
+ #Trailing spaces keep staying
108
+ creole = Docgenerator::Creole::Creole.new(:content => [ "Text1 \n", "Text2" ] )
109
+ assert_equal( ["Text1 \nText2"], creole.source)
110
+
111
+ end #
112
+ def test_creole_input_undefined()
113
+ assert_raises(Docgenerator::Creole::Creole::InputError){ Docgenerator::Creole::Creole.new(:content => :source ) }
114
+ end
115
+ #Check for open File-handles
116
+ def test_creole_input_file()
117
+ creole1 = Docgenerator::Creole::Creole.new( :content => File.read('creole1.0test.txt') )
118
+ creole2 = nil
119
+ File.open('creole1.0test.txt'){|filehandle|
120
+ creole2 = Docgenerator::Creole::Creole.new( :content => filehandle )
121
+ }
122
+ assert_equal( creole1.source, creole2.source)
123
+ end
124
+ #
125
+ #Test for filehandle, if the file is a Rubyscript (Take only parts after __END__)
126
+ def test_creole_input_file_rb()
127
+ #ignore this test, if tests are loaded via require.
128
+ return unless $0 == __FILE__
129
+
130
+ creole1 = Docgenerator::Creole::Creole.new( :name => 'input_file_rb/DATA', :content => DATA )
131
+
132
+ creole2 = nil
133
+ File.open($thisfile){|filehandle|
134
+ #~ $log.warn('Test Filehandle auf ruby nicht m�glich (Test $0 == input.path)')
135
+ #Modify $0 temporary to allow test with condition $0 == input.path
136
+ $0 = "xxxx#{$thisfile}"
137
+ creole2 = Docgenerator::Creole::Creole.new( :name => 'input_file_rb', :content => filehandle, :log => $tmplog )
138
+ $0 = $thisfile
139
+ }
140
+ #normalize line ends
141
+ assert_equal( creole1.source.map{|entry|entry.gsub( /\r\n?/, "\n")}, creole2.source)
142
+ end
143
+ def test_creole_input_file_simple
144
+ assert(File.exist?('creole_testtext.creole'))
145
+ creole = Docgenerator::Creole::Creole.new()
146
+ File.open('creole_testtext.creole'){|f| creole << f.readlines }
147
+ end
148
+ def test_creole_input_file_simple_readlines
149
+ creole = Docgenerator::Creole::Creole.new()
150
+ File.open('creole_testtext.creole'){|f| creole << f }
151
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
152
+ end
153
+ #
154
+ #This testcases are taken from http://www.wikicreole.org/wiki/Creole1.0TestCases
155
+ def test_creole_creole1_0test()
156
+ $log.info('Testcases uncomplete creole1.0test.txt')
157
+ #Logger w/o messages
158
+ @opt_silent = { :log => Log4r::Logger.new('silent') }
159
+ creole = Docgenerator::Creole::Creole.new(
160
+ :name => 'creole_creole1_0test',
161
+ :content => File.readlines('creole1.0test.txt').join,
162
+ :log => $tmplog #catch warning for [[links]]
163
+ )
164
+
165
+ assert_equal_filecontent( "expected_creole/test_creole_creole1.0test.html", creole.to_doc(:html, @opt_silent))
166
+ assert_equal_filecontent( "expected_creole/test_creole_creole1.0test.latex", creole.to_doc(:latex, @opt_silent))
167
+ $log.warn('test_creole_creole1.0test: to_context')
168
+ #~ assert_equal_filecontent( "expected_creole/test_creole_creole1.0test.context", creole.to_doc(:context))
169
+ $log.info('test_creole_creole1_0test: uncomplete to_creole')
170
+ #~ assert_equal_filecontent( "expected_creole/test_creole_creole1.0test.creole", creole.to_doc(:creole, @opt))
171
+ assert_equal_filecontent( "expected_creole/test_creole_creole1.0test.text", creole.to_doc(:text, @opt_silent))
172
+ end
173
+ end #Test_creole_basics
174
+
175
+ class Test_creole_paragraphs < MiniTest::Test
176
+ def setup()
177
+ #Avoid warnings about missing logger in to_doc
178
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
179
+ end
180
+
181
+ def test_creole_paragraphs()
182
+ source = <<creole
183
+ This is some text,
184
+ followed by more Text.
185
+ And some more text.
186
+
187
+ And now a new paragraph with some other text.
188
+
189
+ creole
190
+ creole = Docgenerator::Creole::Creole.new(:content => source )
191
+ assert_equal( [source], creole.source)
192
+
193
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.html", creole.to_doc(:html, @opt))
194
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.latex", creole.to_doc(:latex, @opt))
195
+ $log.warn('test_creole_paragraphs: to_context')
196
+ #~ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.context", creole.to_doc(:context))
197
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.wiki", creole.to_doc(:wiki, @opt))
198
+ $log.info('test_creole_paragraphs: uncomplete to_creole')
199
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.text", creole.to_doc(:text, @opt))
200
+
201
+ #ruby 1.8: symbols as key, ruby 1.9: Strings
202
+ #~ omit_if( RUBY_VERSION !~ /1.9/, "Wrong ruby version #{RUBY_VERSION}"){
203
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs.normsource", creole.normsource.to_yaml)
204
+ #~ }
205
+ end
206
+ def test_creole_paragraphs_wrap()
207
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
208
+ And now a line which is a bit longer then 80 characters in the input line. Creole should split it at position 75 or a bit later (depending on the word length at position 75).
209
+ creole
210
+ )
211
+
212
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap.html", creole.to_doc(:html, @opt))
213
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap.latex", creole.to_doc(:latex, @opt))
214
+ $log.warn('test_creole_paragraphs_wrap: to_context')
215
+ #~ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap.context", creole.to_doc(:context))
216
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap.wiki", creole.to_doc(:wiki, @opt))
217
+ $log.info('test_creole_paragraphs_wrap: uncomplete to_creole')
218
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap.text", creole.to_doc(:text, @opt))
219
+ end #test_creole_paragraphs_wrap()
220
+ def test_creole_paragraphs_wrap60()
221
+
222
+ creole = Docgenerator::Creole::Creole.new(:wrap_at => 60, :content => <<creole
223
+ And now a line which is a bit longer then 80 characters in the input line. Creole should split it at position 60 or a bit later (depending on the word length at position 60).
224
+ creole
225
+ )
226
+
227
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap60.html", creole.to_doc(:html, @opt))
228
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap60.latex", creole.to_doc(:latex, @opt))
229
+ $log.warn('test_creole_paragraphs_wrap60: to_context')
230
+ #~ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap60.context", creole.to_doc(:context))
231
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap60.wiki", creole.to_doc(:wiki, @opt))
232
+ $log.info('test_creole_paragraphs_wrap: uncomplete to_creole')
233
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap60.text", creole.to_doc(:text, @opt))
234
+ end #test_creole_paragraphs_wrap60()
235
+
236
+ def test_creole_paragraphs_wrap0()
237
+
238
+ creole = Docgenerator::Creole::Creole.new(:wrap_at => 0, :content => <<creole
239
+ And now a line which is a bit longer then 80 characters in the input line. Creole should not split it, because we defined split_at to 0.
240
+
241
+ And now a line which is a bit longer then 80 characters in the input line.
242
+ Creole should not split it, because we defined split_at to 0.
243
+ creole
244
+ )
245
+
246
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap0.html", creole.to_doc(:html, @opt))
247
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap0.latex", creole.to_doc(:latex, @opt))
248
+ $log.warn('test_creole_paragraphs_wrap0: to_context')
249
+ #~ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap0.context", creole.to_doc(:context))
250
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap0.wiki", creole.to_doc(:wiki, @opt))
251
+ $log.info('test_creole_paragraphs_wrap: uncomplete to_creole')
252
+ assert_equal_filecontent( "expected_creole/test_creole_paragraphs_wrap0.text", creole.to_doc(:text, @opt))
253
+ end
254
+
255
+ def test_creole_paragraphs_wrap_with_linebreaks()
256
+ #~ skip 'This does not wrap, it creates one long text'
257
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
258
+ And now a line which is a bit longer then 80 characters in the input line.
259
+ Creole should split it at position 75 or a bit later
260
+ (depending on the word length at position 75).
261
+ creole
262
+ )
263
+
264
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
265
+ assert_equal_filecontent( "expected_creole/#{__method__}.latex", creole.to_doc(:latex, @opt))
266
+ $log.warn('#{__method__}: to_context')
267
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.context", creole.to_doc(:context))
268
+ assert_equal_filecontent( "expected_creole/#{__method__}.wiki", creole.to_doc(:wiki, @opt))
269
+ $log.info('#{__method__}: uncomplete to_creole')
270
+ assert_equal_filecontent( "expected_creole/#{__method__}.text", creole.to_doc(:text, @opt))
271
+ end #test_creole_paragraphs_wrap()
272
+
273
+ end #Test_creole_paragraphs < MiniTest::Test
274
+
275
+ class Test_creole_headings < MiniTest::Test
276
+ def setup()
277
+ #Avoid warnings about missing logger in to_doc
278
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
279
+ end
280
+
281
+ def test_creole_headings()
282
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
283
+ = Top-level heading (1)
284
+ == This a test for creole 0.1 (2)
285
+ === This is a Subheading (3)
286
+ ==== Subsub (4)
287
+ ===== Subsubsub (5)
288
+
289
+ The ending equal signs should not be displayed:
290
+
291
+ = Top-level heading (1) =
292
+ == This a test for creole 0.1 (2) ==
293
+ === This is a Subheading (3) ===
294
+ ==== Subsub (4) ====
295
+ ===== Subsubsub (5) =====
296
+
297
+
298
+ = **not** //parsed// =
299
+ The content is not parsed.
300
+ creole
301
+ )
302
+
303
+ assert_equal_filecontent( "expected_creole/test_creole_headings.html", creole.to_doc(:html, @opt))
304
+ assert_equal_filecontent( "expected_creole/test_creole_headings.latex", creole.to_doc(:latex, @opt))
305
+ $log.warn('test_creole_headings: to_context')
306
+ #~ assert_equal_filecontent( "expected_creole/test_creole_headings.context", creole.to_doc(:context))
307
+ assert_equal_filecontent( "expected_creole/test_creole_headings.wiki", creole.to_doc(:wiki, @opt))
308
+ $log.info('test_creole_paragraphs: uncomplete to_creole')
309
+ assert_equal_filecontent( "expected_creole/test_creole_headings.text", creole.to_doc(:text, @opt))
310
+ end #test_creole_headings
311
+ #
312
+ #Modification of standard: Labels for headings.
313
+ #
314
+ #Including the definition of a label tor the toc.
315
+ def test_creole_label()
316
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
317
+ ==Titel 1==
318
+ Text
319
+ ===Titel 2===
320
+ Text unter Titel 2
321
+ ===[2b]Titel 2b===
322
+ Text unter Titel 2b.
323
+ creole
324
+ )
325
+ #Check the manual label
326
+ assert_equal_filecontent( "expected_creole/test_creole_label.html", creole.to_doc(:html, @opt))
327
+ assert_equal_filecontent( "expected_creole/test_creole_label.latex", creole.to_doc(:latex, @opt))
328
+ $log.warn('test_creole_label: to_context')
329
+ #~ assert_equal_filecontent( "expected_creole/test_creole_label.context", creole.to_doc(:context))
330
+ $log.info('test_creole_label: uncomplete text/to_creole')
331
+ #~ assert_equal_filecontent( "expected_creole/test_creole_label.creole", creole.to_doc(:creole, @opt))
332
+ #~ assert_equal_filecontent( "expected_creole/test_creole_label.text", creole.to_doc(:text, @opt))
333
+
334
+ end
335
+ end #Test_creole_headings < MiniTest::Test
336
+
337
+ class Test_creole_toc < MiniTest::Test
338
+ def setup()
339
+ #Avoid warnings about missing logger in to_doc
340
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
341
+ end
342
+ def test_creole_toc()
343
+ creole = Docgenerator::Creole::Creole.new(
344
+ :name => 'toc',
345
+ :content => <<creole
346
+ =one
347
+ =two
348
+ ==two-one
349
+ =[drei]three
350
+ ==three-one
351
+ creole
352
+ )
353
+ assert_equal_filecontent( "expected_creole/test_creole_toc.html", creole.toc.to_doc(:html, @opt))
354
+ assert_equal_filecontent( "expected_creole/test_creole_toc_text.html", creole.to_doc(:html, @opt))
355
+ assert_equal_filecontent( "expected_creole/test_creole_toc.latex", creole.toc.to_doc(:latex, @opt))
356
+ assert_equal_filecontent( "expected_creole/test_creole_toc_text.latex", creole.to_doc(:latex, @opt))
357
+ $log.warn('test_creole_toc_text: to_context')
358
+ #~ assert_equal_filecontent( "expected_creole/test_creole_toc_text.context", creole.to_doc(:context))
359
+ $log.warn('test_creole_toc: to wiki/creole')
360
+ #~ assert_equal_filecontent( "expected_creole/test_creole_toc.creole", creole.to_doc(:creole, @opt))
361
+ assert_equal_filecontent( "expected_creole/test_creole_toc.text", creole.toc.to_doc(:text, @opt))
362
+ end #test_creole_toc
363
+ #Build the toc, but only up to level toclevel.
364
+ def test_creole_toc_level()
365
+ toclevel = 1
366
+ creole = Docgenerator::Creole::Creole.new(
367
+ :name => 'toc',
368
+ :content => <<creole
369
+ Test for document with toc-level #{toclevel}
370
+ =one
371
+ =two
372
+ ==two-one
373
+ =[drei]three
374
+ ==three-one
375
+ creole
376
+ )
377
+ assert_equal_filecontent( "expected_creole/test_creole_toc_level.html", creole.toc(:level => toclevel).to_doc(:html, @opt))
378
+ assert_equal_filecontent( "expected_creole/test_creole_toc_level_text.html", creole.to_doc(:html, @opt))
379
+ assert_equal_filecontent( "expected_creole/test_creole_toc_level.latex", creole.toc(:level => toclevel).to_doc(:latex, @opt))
380
+ assert_equal_filecontent( "expected_creole/test_creole_toc_level_text.latex", creole.to_doc(:latex, :level => toclevel))
381
+ $log.warn('test_creole_toc_text: to_context')
382
+ #~ assert_equal_filecontent( "expected_creole/test_creole_toc_text.context", creole.to_doc(:context)
383
+ $log.warn('test_creole_toc: to wiki/creole')
384
+ #~ assert_equal_filecontent( "expected_creole/test_creole_toc_level.creole", creole.to_doc(:creole, @opt)
385
+ assert_equal_filecontent( "expected_creole/test_creole_toc_level.text", creole.toc(:level => toclevel).to_doc(:text, @opt))
386
+ end #test_creole_toc_level
387
+ end #Test_creole_toc
388
+
389
+ class Test_creole_paragraph2 < MiniTest::Test
390
+ def setup()
391
+ #Avoid warnings about missing logger in to_doc
392
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
393
+ end
394
+ def test_creole_newline()
395
+ creole = Docgenerator::Creole::Creole.new(
396
+ :name => 'newline',
397
+ :content => <<'creole'
398
+ You can format an address by simply forcing linebreaks:
399
+
400
+ My contact dates:\\
401
+ Pone: xyz\\
402
+ Fax: +45\\
403
+ Mobile: abc
404
+
405
+ creole
406
+ )
407
+ assert_equal_filecontent( "expected_creole/test_creole_newline.html", creole.to_doc(:html, @opt))
408
+ assert_equal_filecontent( "expected_creole/test_creole_newline.latex", creole.to_doc(:latex, @opt))
409
+ $log.warn('test_creole_newline: to_context')
410
+ #~ assert_equal_filecontent( "expected_creole/test_creole_newline.context", creole.to_doc(:context))
411
+ $log.warn('test_creole_newline: to wiki/creole')
412
+ #~ assert_equal_filecontent( "expected_creole/test_creole_newline.creole", creole.to_doc(:creole, @opt))
413
+ assert_equal_filecontent( "expected_creole/test_creole_newline.text", creole.to_doc(:text, @opt))
414
+ end #test_creole_newline
415
+ def test_creole_hr()
416
+ creole = Docgenerator::Creole::Creole.new(
417
+ :name => 'hr',
418
+ :content => <<creole
419
+
420
+ You can use this to draw a line to separate the page:
421
+ ----
422
+ This is after the horizontal line
423
+ creole
424
+ )
425
+ assert_equal_filecontent( "expected_creole/test_creole_hr.html", creole.to_doc(:html, @opt))
426
+ assert_equal_filecontent( "expected_creole/test_creole_hr.latex", creole.to_doc(:latex, @opt))
427
+ $log.warn('test_creole_hr: to_context')
428
+ #~ assert_equal_filecontent( "expected_creole/test_creole_hr.context", creole.to_doc(:context))
429
+ $log.warn('test_creole_hr: to wiki/creole')
430
+ #~ assert_equal_filecontent( "expected_creole/test_creole_hr.creole", creole.to_doc(:creole, @opt))
431
+ assert_equal_filecontent( "expected_creole/test_creole_hr.text", creole.to_doc(:text, @opt))
432
+ end #test_creole_hr
433
+
434
+ end #Test_creole_paragraph2
435
+
436
+
437
+ class Test_creole_inline < MiniTest::Test
438
+ def setup()
439
+ #Avoid warnings about missing logger in to_doc
440
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
441
+ end
442
+
443
+ def test_creole_inline_bold_em()
444
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
445
+ You can make things **bold** or //italic// or **//both//** or //**both**//.
446
+ creole
447
+ )
448
+ assert_equal_filecontent( "expected_creole/test_creole_inline.html", creole.to_doc(:html, @opt))
449
+ assert_equal_filecontent( "expected_creole/test_creole_inline.latex", creole.to_doc(:latex, @opt))
450
+ $log.warn('test_creole_inline: to_context')
451
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline.context", creole.to_doc(:context))
452
+ $log.info('test_creole_inline_bold_em: inline to wiki/creole')
453
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline.creole", creole.to_doc(:creole, @opt))
454
+ $log.warn('test_creole_inline_bold_em: inline text with additional spaces')
455
+ assert_equal_filecontent( "expected_creole/test_creole_inline.text", creole.to_doc(:text, @opt))
456
+ end
457
+
458
+ def test_creole_inline_bold_line_break()
459
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
460
+ Character formatting extends across line breaks: **bold,
461
+ this is still bold. This line deliberately does not end in star-star.
462
+
463
+ Not bold. Character formatting does not cross paragraph boundaries.
464
+ creole
465
+ )
466
+ assert_equal_filecontent( "expected_creole/test_creole_line_break.html", creole.to_doc(:html, @opt))
467
+ assert_equal_filecontent( "expected_creole/test_creole_line_break.latex", creole.to_doc(:latex, @opt))
468
+ $log.warn('test_creole_line_break: to_context')
469
+ #~ assert_equal_filecontent( "expected_creole/test_creole_line_break.context", creole.to_doc(:context))
470
+ $log.info('test_creole_inline_bold_line_break: inline to wiki/creole')
471
+ #~ assert_equal_filecontent( "expected_creole/test_creole_line_break.creole", creole.to_doc(:creole, @opt))
472
+ #~ assert_equal_filecontent( "expected_creole/test_creole_line_break.text", creole.to_doc(:text, @opt))
473
+ end
474
+
475
+ def test_creole_inline_apostroph()
476
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
477
+ You can add text "in apostoph".
478
+
479
+ Problem may be german.sty and activated " like in "a.
480
+ It will be converted to an a-Umlaut.
481
+ creole
482
+ )
483
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
484
+ assert_equal_filecontent( "expected_creole/#{__method__}.latex", creole.to_doc(:latex, @opt))
485
+ $log.warn('#{__method__}: to_context')
486
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.context", creole.to_doc(:context))
487
+ $log.info('#{__method__}_bold_em: inline to wiki/creole')
488
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.creole", creole.to_doc(:creole, @opt))
489
+ $log.warn('#{__method__}_bold_em: inline text with additional spaces')
490
+ assert_equal_filecontent( "expected_creole/#{__method__}.text", creole.to_doc(:text, @opt))
491
+ end
492
+
493
+ end #Test_creole_inline
494
+
495
+
496
+ class Test_creole_lists < MiniTest::Test
497
+ def setup()
498
+ #Avoid warnings about missing logger in to_doc
499
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
500
+ end
501
+ def test_creole_list_ul()
502
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
503
+ Text before
504
+ *Listentry 1
505
+ *Listentry 2
506
+ **Listentry 2.1
507
+ **Listentry 2.2
508
+ *Listentry 3
509
+ **Listentry 3.2
510
+
511
+
512
+ * You can have
513
+ multiline list items
514
+ * this is a second multiline
515
+ list item
516
+
517
+ Text afterwords
518
+ creole
519
+ )
520
+ assert_equal_filecontent( "expected_creole/test_creole_list_ul.html", creole.to_doc(:html, @opt))
521
+ assert_equal_filecontent( "expected_creole/test_creole_list_ul.latex", creole.to_doc(:latex, @opt))
522
+ $log.warn('test_creole_list_ul: to_context')
523
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul.context", creole.to_doc(:context))
524
+ $log.warn('test_creole_list_ul: list to wiki/creole')
525
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul.creole", creole.to_doc(:creole, @opt))
526
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul.wiki", creole.to_doc(:wiki, @opt))
527
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul.text", creole.to_doc(:text, @opt))
528
+ #ruby 1.8: symbols as key, ruby 1.9: Strings
529
+ #~ omit_if( RUBY_VERSION !~ /1.9/, "Wrong ruby version #{RUBY_VERSION}"){
530
+ assert_equal_filecontent( "expected_creole/test_creole_list_ul.normsource", creole.normsource.to_yaml)
531
+ #~ }
532
+ end
533
+ #It works fine here, but LaTeX will give you an error.
534
+ def test_creole_list_ul_too_much()
535
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
536
+ Text before
537
+ *Listentry 1
538
+ *Listentry 2
539
+ **Listentry 2.1
540
+ **Listentry 2.2
541
+ ***Listentry 2.2.1
542
+ ****Listentry 2.2.1.1
543
+ *****Listentry 2.2.1.1.1
544
+ *Listentry 3
545
+
546
+ Text afterwords
547
+ creole
548
+ )
549
+ assert_equal_filecontent( "expected_creole/test_creole_list_ul_too_much.html", creole.to_doc(:html, @opt))
550
+ assert_equal_filecontent( "expected_creole/test_creole_list_ul_too_much.latex", creole.to_doc(:latex, @opt))
551
+ $log.warn('test_creole_list_ul_too_much: to_context')
552
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul_too_much.context", creole.to_doc(:context))
553
+ $log.warn('test_creole_list_ul_too_much: list to wiki/creole')
554
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul_too_much.creole", creole.to_doc(:creole, @opt))
555
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ul_too_much.text", creole.to_doc(:text, @opt))
556
+ end
557
+ def test_creole_list_ol()
558
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
559
+ Text before
560
+ #Listentry 1
561
+ #Listentry 2
562
+ ##Listentry 2.1
563
+ ##Listentry 2.2
564
+ #Listentry 3
565
+ Text afterwords
566
+ creole
567
+ )
568
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol.html", creole.to_doc(:html, @opt))
569
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol.latex", creole.to_doc(:latex, @opt))
570
+ $log.warn('test_creole_list_ol: to_context')
571
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol.context", creole.to_doc(:context))
572
+ $log.warn('test_creole_list_ol: list to wiki/creole')
573
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol.creole", creole.to_doc(:creole, @opt))
574
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol.text", creole.to_doc(:text, @opt))
575
+ end #ol
576
+
577
+ def test_creole_list_ol_ul()
578
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
579
+ Text before
580
+ #Listentry 1
581
+ #Listentry 2
582
+ #*Listentry 2.1
583
+ #*Listentry 2.2
584
+ #Listentry 3
585
+
586
+ Text afterwords
587
+ creole
588
+ )
589
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol_ul.html", creole.to_doc(:html, @opt))
590
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol_ul.latex", creole.to_doc(:latex, @opt))
591
+ $log.warn('test_creole_list_ol_ul: to_context')
592
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_ul.context", creole.to_doc(:context))
593
+ $log.warn('test_creole_list_ol_ul: list to wiki/creole')
594
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_ul.creole", creole.to_doc(:creole, @opt))
595
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_ul.text", creole.to_doc(:text, @opt))
596
+ end
597
+
598
+ def test_creole_list_ol_after_ul()
599
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
600
+ Text before
601
+ *Listentry 1
602
+ #Listentry 2
603
+
604
+ Text afterwords
605
+ creole
606
+ )
607
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol_after_ul.html", creole.to_doc(:html, @opt))
608
+ assert_equal_filecontent( "expected_creole/test_creole_list_ol_after_ul.latex", creole.to_doc(:latex, @opt))
609
+ $log.warn('test_creole_list_ol_after_ul: to_context')
610
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_after_ul.context", creole.to_doc(:context))
611
+ $log.warn('test_creole_list_ol_after_ul: list to wiki/creole')
612
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_after_ul.creole", creole.to_doc(:creole, @opt))
613
+ #~ assert_equal_filecontent( "expected_creole/test_creole_list_ol_after_ul.text", creole.to_doc(:text, @opt))
614
+ end
615
+
616
+ def test_creole_list_ulul_without_ul()
617
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
618
+ Text before
619
+ **Listentry 1
620
+ Text afterwords
621
+ creole
622
+ )
623
+ @opt[:log] = $tmplog #Suppress error message
624
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
625
+ assert_equal_filecontent( "expected_creole/#{__method__}.latex", creole.to_doc(:latex, @opt))
626
+ $log.warn("#{__method__}: to_context")
627
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.context", creole.to_doc(:context))
628
+ $log.warn("#{__method__}: list to wiki/creole")
629
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.creole", creole.to_doc(:creole, @opt))
630
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.text", creole.to_doc(:text, @opt))
631
+ end
632
+
633
+ #Line breaks will be lost.
634
+ def test_creole_ul_multiple_line()
635
+ $log.warn('test_creole_ul_multiple_line: latex: grosse textl�cken (wrap mit leerzeichen bereinigen?)')
636
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
637
+ * vorher
638
+ * text
639
+ mehr text zum item
640
+ * nachher und vorher
641
+ * text
642
+ mehr text zum item
643
+ * nachher
644
+ creole
645
+ )
646
+ assert_equal_filecontent( "expected_creole/test_creole_ul_multiple_line.html", creole.to_doc(:html, @opt))
647
+ assert_equal_filecontent( "expected_creole/test_creole_ul_multiple_line.latex", creole.to_doc(:latex, @opt))
648
+ $log.warn('test_creole_ul_multiple_line: to_context')
649
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_multiple_line.context", creole.to_doc(:context))
650
+ $log.warn('test_creole_ul_multiple_line: list to wiki/creole')
651
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_multiple_line.creole", creole.to_doc(:creole, @opt))
652
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_multiple_line.text", creole.to_doc(:text, @opt)) #fixme
653
+ end
654
+ def test_creole_ul_with_bold()
655
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
656
+ You can use lists, start it at the first column for now, please...
657
+
658
+ unnumbered lists are like
659
+ * item a
660
+ * item b
661
+ * **bold item c**
662
+ Text
663
+ creole
664
+ )
665
+ assert_equal_filecontent( "expected_creole/test_creole_ul_with_bold.html", creole.to_doc(:html, @opt))
666
+ assert_equal_filecontent( "expected_creole/test_creole_ul_with_bold.latex", creole.to_doc(:latex, @opt))
667
+ $log.warn('test_creole_ul_with_bold: to_context')
668
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_with_bold.context", creole.to_doc(:context))
669
+ $log.warn('test_creole_ul_with_bold: list to wiki/creole')
670
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_with_bold.creole", creole.to_doc(:creole, @opt))
671
+ assert_equal_filecontent( "expected_creole/test_creole_ul_with_bold.text", creole.to_doc(:text, @opt))
672
+ end
673
+ def test_creole_ul_with_blank()
674
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
675
+ blank space is also permitted before lists like:
676
+ * item a
677
+ * item b
678
+ * item c
679
+ ** item c.a
680
+ Text
681
+ creole
682
+ )
683
+ assert_equal_filecontent( "expected_creole/test_creole_ul_with_blank.html", creole.to_doc(:html, @opt))
684
+ assert_equal_filecontent( "expected_creole/test_creole_ul_with_blank.latex", creole.to_doc(:latex, @opt))
685
+ $log.warn('test_creole_ul_with_blank: to_context')
686
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_with_blank.context", creole.to_doc(:context))
687
+ $log.warn('test_creole_ul_with_blank: list to wiki/creole')
688
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_with_blank.creole", creole.to_doc(:creole, @opt))
689
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ul_with_blank.text", creole.to_doc(:text, @opt))
690
+ end
691
+ #Check, if the second list is really a second list.
692
+ def test_creole_mix_titles_list()
693
+ creole = Docgenerator::Creole::Creole.new(
694
+ :name => 'mix_titles_list',
695
+ :content => <<creole
696
+ =Titel 1
697
+ *item 1
698
+ *item 2
699
+ =Titel 2
700
+ *item 1
701
+ *item 2
702
+ creole
703
+ )
704
+ assert_equal_filecontent( "expected_creole/test_creole_mix_titles_list.html", creole.to_doc(:html, @opt))
705
+ assert_equal_filecontent( "expected_creole/test_creole_mix_titles_list.latex", creole.to_doc(:latex, @opt))
706
+ $log.warn('test_creole_mix_titles_list: to_context')
707
+ #~ assert_equal_filecontent( "expected_creole/test_creole_mix_titles_list.context", creole.to_doc(:context))
708
+ $log.warn('test_creole_mix_titles_list: to wiki/creole')
709
+ #~ assert_equal_filecontent( "expected_creole/test_creole_mix_titles_list.creole", creole.to_doc(:creole, @opt))
710
+ assert_equal_filecontent( "expected_creole/test_creole_mix_titles_list.text", creole.to_doc(:text, @opt))
711
+ end #test_creole_mix_titles_list
712
+
713
+ end #Test_creole_List
714
+
715
+
716
+
717
+ class Test_creole_links < MiniTest::Test
718
+ def setup()
719
+ #Avoid warnings about missing logger in to_doc
720
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
721
+ end
722
+ def test_creole_links_external_explizit()
723
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
724
+ Here's a external link without a description: [[http://www.wikicreole.org]].
725
+
726
+ And here's a external link with a description: [[http://www.wikicreole.org|wikicreole.org]].
727
+ creole
728
+ )
729
+ assert_equal_filecontent( "expected_creole/test_creole_links_external.html", creole.to_doc(:html, @opt))
730
+ assert_equal_filecontent( "expected_creole/test_creole_links_external.latex", creole.to_doc(:latex, @opt))
731
+ $log.warn('test_creole_links_external: to_context')
732
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_external.context", creole.to_doc(:context))
733
+ $log.warn('test_creole_links_external: to wiki/creole')
734
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_external.creole", creole.to_doc(:creole, @opt))
735
+ assert_equal_filecontent( "expected_creole/test_creole_links_external.text", creole.to_doc(:text, @opt))
736
+ end #test_creole_links_external
737
+
738
+ def test_creole_links_external_implicit()
739
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
740
+ Free links without braces should be rendered as well, like http://www.wikicreole.org/ and [[http://www.wikicreole.org/users/~example]].
741
+
742
+ See also description: http://www.wikicreole.org/wiki/Links
743
+
744
+ In case of phrase ends with . you should use explicit links like
745
+ [[http://www.wikicreole.org/users/~example]].
746
+ creole
747
+ )
748
+ assert_equal_filecontent( "expected_creole/test_creole_links_external_implicit.html", creole.to_doc(:html, @opt))
749
+ assert_equal_filecontent( "expected_creole/test_creole_links_external_implicit.latex", creole.to_doc(:latex, @opt))
750
+ $log.warn('test_creole_links_external_implicit: to_context')
751
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_external_implicit.context", creole.to_doc(:context))
752
+ $log.warn('test_creole_links_external_implicit: to wiki/creole')
753
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_external_implicit.creole", creole.to_doc(:creole, @opt))
754
+ assert_equal_filecontent( "expected_creole/test_creole_links_external_implicit.text", creole.to_doc(:text, @opt))
755
+ end #test_creole_links_external_implicit
756
+
757
+ #
758
+ #Bug 2009-10-14:
759
+ # <a href = "http:" >http:</a> <em >www.wikicreole.org/users/~example</em>
760
+ #If the very end of a text is a link, it is not detected correct
761
+ def test_creole_links_implicit_end()
762
+ creole = Docgenerator::Creole::Creole.new(
763
+ :name => 'links_implicit_end',
764
+ :content => "http://www.wikicreole.org/users/~example"
765
+ )
766
+ assert_equal_filecontent( "expected_creole/test_creole_links_implicit_end.html", creole.to_doc(:html, @opt))
767
+ assert_equal_filecontent( "expected_creole/test_creole_links_implicit_end.latex", creole.to_doc(:latex, @opt))
768
+ #~ $log.warn('test_creole_links_implicit_end: to_context')
769
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_implicit_end.context", creole.to_doc(:context))
770
+ #~ $log.warn('test_creole_links_implicit_end: to wiki/creole')
771
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_implicit_end.creole", creole.to_doc(:creole, @opt))
772
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_implicit_end.text", creole.to_doc(:text, @opt))
773
+ end #test_creole_links_implicit_end
774
+
775
+ def test_creole_links_explicit_with_em()
776
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
777
+ Be careful that italic links are rendered properly: //[[http://my.book.example/|My Book Title]]//
778
+ creole
779
+ )
780
+ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_with_em.html", creole.to_doc(:html, @opt))
781
+ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_with_em.latex", creole.to_doc(:latex, @opt))
782
+ $log.warn('test_creole_links_explicit_with_em: to_context')
783
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_with_em.context", creole.to_doc(:context))
784
+ $log.warn('test_creole_links_explicit_with_em: to wiki/creole')
785
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_with_em.creole", creole.to_doc(:creole, @opt))
786
+ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_with_em.text", creole.to_doc(:text, @opt))
787
+ end #test_creole_links_explicit_with_em
788
+
789
+ def test_creole_links_file()
790
+
791
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
792
+ [[./#{$thisfile}]]
793
+
794
+ [[./#{$thisfile}|This unittest-source]]
795
+ creole
796
+ )
797
+ assert_equal_filecontent( "expected_creole/test_creole_links_file.html", creole.to_doc(:html, @opt))
798
+ assert_equal_filecontent( "expected_creole/test_creole_links_file.latex", creole.to_doc(:latex, @opt))
799
+ $log.warn('test_creole_links_file: to_context')
800
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_file.context", creole.to_doc(:context))
801
+ $log.warn('test_creole_links_file: to wiki/creole')
802
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_file.creole", creole.to_doc(:creole, @opt))
803
+ assert_equal_filecontent( "expected_creole/test_creole_links_file.text", creole.to_doc(:text, @opt))
804
+ end #test_creole_links_file
805
+
806
+ def test_creole_links_explicit_internal()
807
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
808
+ [[#internal]]
809
+
810
+ [[#internal|Links inside]]
811
+ creole
812
+ )
813
+ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_internal.html", creole.to_doc(:html, @opt))
814
+ $log.warn('test_creole_links_explicit_internal: to latex')
815
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_internal.latex", creole.to_doc(:latex, @opt))
816
+ $log.warn('test_creole_links_explicit_internal: to_context')
817
+ #~ #~ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_internal.context", creole.to_doc(:context))
818
+ $log.warn('test_creole_links_explicit_internal: to wiki/creole')
819
+ #~ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_internal.creole", creole.to_doc(:creole, @opt))
820
+ assert_equal_filecontent( "expected_creole/test_creole_links_explicit_internal.text", creole.to_doc(:text, @opt))
821
+ end #test_creole_links_explicit_internal
822
+
823
+ end #Test_creole_links
824
+
825
+
826
+ class Test_creole_pictures < MiniTest::Test
827
+ def setup()
828
+ #Avoid warnings about missing logger in to_doc
829
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
830
+ end
831
+ def test_creole_pictures()
832
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
833
+ This should be a flower with the ALT text "this is a flower" if your wiki supports ALT text on images:
834
+
835
+ {{Red_Flower.jpg}}
836
+
837
+ {{Red_Flower.jpg|here is a red flower}}
838
+ creole
839
+ )
840
+ assert_equal_filecontent( "expected_creole/test_creole_pictures.html", creole.to_doc(:html, @opt))
841
+ assert_equal_filecontent( "expected_creole/test_creole_pictures.latex", creole.to_doc(:latex, @opt))
842
+ $log.warn('test_creole_pictures: to_context')
843
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures.context", creole.to_doc(:context))
844
+ $log.warn('test_creole_pictures: to wiki/creole')
845
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures.creole", creole.to_doc(:creole, @opt))
846
+ $log.warn('test_creole_pictures: to text/creole')
847
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures.text", creole.to_doc(:text, @opt))
848
+ end #test_creole_pictures
849
+ def test_creole_picture_link()
850
+ creole = Docgenerator::Creole::Creole.new(:name => 'Creole_picture_link',
851
+ :content => <<creole
852
+ [[./#{$thisfile}|{{Red_Flower.jpg}}]] - if you click on the image, will goto "some link"
853
+
854
+ [[http://example.com/|{{Red_Flower.jpg}}]] - same as above: picture links to url
855
+ creole
856
+ )
857
+ assert_equal_filecontent( "expected_creole/test_creole_picture_link.html", creole.to_doc(:html, @opt))
858
+ #~ assert_equal_filecontent( "expected_creole/test_creole_picture_link.latex", creole.to_doc(:latex, @opt))
859
+ $log.warn('test_creole_picture_link: to_context')
860
+ #~ #~ assert_equal_filecontent( "expected_creole/test_creole_picture_link.context", creole.to_doc(:context))
861
+ $log.warn('test_creole_picture_link: to wiki/creole')
862
+ #~ assert_equal_filecontent( "expected_creole/test_creole_picture_link.creole", creole.to_doc(:creole, @opt))
863
+ #~ assert_equal_filecontent( "expected_creole/test_creole_picture_link.text", creole.to_doc(:text, @opt))
864
+ end #test_creole_picture_link
865
+ def test_creole_pictures_css()
866
+ creole = Docgenerator::Creole::Creole.new(
867
+ :name => 'pictures_css',
868
+ :content => <<creole
869
+ {{Red_Flower.jpg|red flower|css=width:50px}}
870
+
871
+ {{Red_Flower.jpg|red flower|imgcss=width:100px}}
872
+ creole
873
+ )
874
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_css.html", creole.to_doc(:html, @opt))
875
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_css.latex", creole.to_doc(:latex, @opt))
876
+ $log.warn('test_creole_pictures_css: to_context')
877
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_css.context", creole.to_doc(:context))
878
+ $log.warn('test_creole_pictures_css: to wiki/creole')
879
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_css.creole", creole.to_doc(:creole, @opt))
880
+ $log.warn('test_creole_pictures_css: to text/creole')
881
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_css.text", creole.to_doc(:text, @opt))
882
+ end #test_creole_pictures_css
883
+ def test_creole_pictures_imgclass()
884
+ creole = Docgenerator::Creole::Creole.new(
885
+ :name => 'pictures_imgclass',
886
+ :content => <<creole
887
+ {{Red_Flower.jpg||class=test}}
888
+
889
+ {{Red_Flower.jpg||imgclass=test}}
890
+ creole
891
+ )
892
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_imgclass.html", creole.to_doc(:html, @opt))
893
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_imgclass.latex", creole.to_doc(:latex, @opt))
894
+ $log.warn('test_creole_pictures_imgclass: to_context')
895
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_imgclass.context", creole.to_doc(:context))
896
+ $log.warn('test_creole_pictures_imgclass: to wiki/creole')
897
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_imgclass.creole", creole.to_doc(:creole, @opt))
898
+ $log.warn('test_creole_pictures_imgclass: to text/creole')
899
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_imgclass.text", creole.to_doc(:text, @opt))
900
+ end #test_creole_pictures_imgclass
901
+
902
+ def test_creole_pictures_longdesc()
903
+ creole = Docgenerator::Creole::Creole.new(
904
+ :name => 'pictures_longdesc',
905
+ :content => <<creole
906
+ {{Red_Flower.jpg||longdesc=http://www.pixelio.de/details.php?image_id=405788}}
907
+ creole
908
+ )
909
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_longdesc.html", creole.to_doc(:html, @opt))
910
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_longdesc.latex", creole.to_doc(:latex, @opt))
911
+ #~ $log.warn('test_creole_pictures_longdesc: to_context')
912
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_longdesc.context", creole.to_doc(:context))
913
+ $log.warn('test_creole_pictures_longdesc: to wiki/creole')
914
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_longdesc.creole", creole.to_doc(:creole, @opt))
915
+ $log.warn('test_creole_pictures_longdesc: to text/creole')
916
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_longdesc.text", creole.to_doc(:text, @opt))
917
+ end #test_creole_pictures_longdesc
918
+
919
+ def test_creole_pictures_width()
920
+ creole = Docgenerator::Creole::Creole.new(
921
+ :name => 'pictures_width',
922
+ :content => <<creole
923
+ {{Red_Flower.jpg||width=\\textwidth|css=width:100%}}
924
+ creole
925
+ )
926
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_width.html", creole.to_doc(:html, @opt))
927
+ assert_equal_filecontent( "expected_creole/test_creole_pictures_width.latex", creole.to_doc(:latex, @opt))
928
+ #~ $log.warn('test_creole_pictures_width: to_context')
929
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_width.context", creole.to_doc(:context))
930
+ $log.warn('test_creole_pictures_width: to wiki/creole')
931
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_width.creole", creole.to_doc(:creole, @opt))
932
+ $log.warn('test_creole_pictures_width: to text/creole')
933
+ #~ assert_equal_filecontent( "expected_creole/test_creole_pictures_width.text", creole.to_doc(:text, @opt))
934
+ end #test_creole_pictures_width
935
+
936
+ end #Test_creole_pictures
937
+
938
+
939
+ class Test_creole_verbatim < MiniTest::Test
940
+ def setup()
941
+ #Avoid warnings about missing logger in to_doc
942
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
943
+ end
944
+ def test_creole_verbatim()
945
+ creole = Docgenerator::Creole::Creole.new( :name => 'creole_verbatim',
946
+ :content => <<creole
947
+ You can use nowiki syntax if you would like do stuff like this:
948
+
949
+ {{{
950
+ Guitar Chord C:
951
+
952
+ ||---|---|---|
953
+ ||-0-|---|---|
954
+ ||---|---|---|
955
+ ||---|-0-|---|
956
+ ||---|---|-0-|
957
+ ||---|---|---|
958
+ }}}
959
+
960
+ before
961
+ {{{
962
+ This is some verbatim text
963
+ }}}
964
+ after
965
+
966
+ See [[http://www.wikicreole.org/wiki/PreformattedAndNowiki]]
967
+ creole
968
+ )
969
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim.html", creole.to_doc(:html, @opt))
970
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim.latex", creole.to_doc(:latex, @opt))
971
+ $log.warn('test_creole_verbatim: to_context')
972
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim.context", creole.to_doc(:context))
973
+ $log.warn('test_creole_verbatim: change < to &lt; ....')
974
+ $log.warn('test_creole_verbatim: to wiki/creole')
975
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim.creole", creole.to_doc(:creole, @opt))
976
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim.text", creole.to_doc(:text, @opt))
977
+ end #test_creole_verbatim
978
+ def test_creole_verbatim_inline()
979
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
980
+
981
+ You can also use inline nowiki {{{ in a sentence }}} like this.
982
+ See [[http://www.wikicreole.org/wiki/PreformattedAndNowiki]].
983
+
984
+ Some examples of markup are: {{{** <i>this</i> ** }}}
985
+ creole
986
+ )
987
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline.html", creole.to_doc(:html, @opt))
988
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline.latex", creole.to_doc(:latex, @opt))
989
+ $log.warn('test_creole_verbatim_inline: to_context')
990
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline.context", creole.to_doc(:context))
991
+ $log.warn('test_creole_verbatim_inline: to wiki/creole')
992
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline.creole", creole.to_doc(:creole, @opt))
993
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline.text", creole.to_doc(:text, @opt))
994
+ end #test_creole_verbatim_inline
995
+ def test_creole_verbatim_inline_at_start()
996
+ creole = Docgenerator::Creole::Creole.new(
997
+ :name => 'verbatim_inline_at_start',
998
+ :content => <<creole
999
+ Short verbatim can also be at the start:
1000
+ {{{this is verbatim}}}
1001
+
1002
+ This test checks, if the differences of normal verbatim is detected.
1003
+ creole
1004
+ )
1005
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline_at_start.html", creole.to_doc(:html, @opt))
1006
+ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline_at_start.latex", creole.to_doc(:latex, @opt))
1007
+ $log.warn('test_creole_verbatim_inline_at_start: to_context')
1008
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline_at_start.context", creole.to_doc(:context))
1009
+ $log.warn('test_creole_verbatim_inline_at_start: to wiki/creole')
1010
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline_at_start.creole", creole.to_doc(:creole, @opt))
1011
+ $log.warn('test_creole_verbatim_inline_at_start: to text/creole')
1012
+ #~ assert_equal_filecontent( "expected_creole/test_creole_verbatim_inline_at_start.text", creole.to_doc(:text, @opt))
1013
+ end #test_creole_verbatim_inline_at_start
1014
+
1015
+ end #Test_creole_verbatim
1016
+
1017
+
1018
+ class Test_creole_footnote < MiniTest::Test
1019
+ def setup()
1020
+ #Avoid warnings about missing logger in to_doc
1021
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
1022
+ end
1023
+ def test_creole_footnotes()
1024
+ creole = Docgenerator::Creole::Creole.new(
1025
+ :name => 'footnotes',
1026
+ :content => <<creole
1027
+ <<footnote|This is a footnote>>
1028
+ ----
1029
+ <<footnotes>>
1030
+ creole
1031
+ )
1032
+ assert_equal_filecontent( "expected_creole/test_creole_footnotes.html", creole.to_doc(:html, @opt))
1033
+ assert_equal_filecontent( "expected_creole/test_creole_footnotes.latex", creole.to_doc(:latex, @opt))
1034
+ $log.warn('test_creole_footnotes: to_context')
1035
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes.context", creole.to_doc(:context))
1036
+ $log.warn('test_creole_footnotes: to wiki/creole')
1037
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes.creole", creole.to_doc(:creole, @opt))
1038
+ $log.warn('test_creole_footnotes: to text/creole')
1039
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes.text", creole.to_doc(:text, @opt))
1040
+ end #test_creole_footnotes
1041
+ def test_creole_footnotes_label()
1042
+ creole = Docgenerator::Creole::Creole.new(
1043
+ :name => 'footnotes_label',
1044
+ :content => <<creole
1045
+ <<footnote|This is a footnote|label=s>>
1046
+ This makes only sense in HTML
1047
+ ----
1048
+ <<footnotes>>
1049
+ creole
1050
+ )
1051
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
1052
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.latex", creole.to_doc(:latex, @opt))
1053
+ #~ $log.warn('test_creole_footnotes_label: to_context')
1054
+ #~ #~ assert_equal_filecontent( "expected_creole/#{__method__}.context", creole.to_doc(:context))
1055
+ #~ $log.warn('test_creole_footnotes_label: to wiki/creole')
1056
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.creole", creole.to_doc(:creole, @opt))
1057
+ #~ $log.warn('test_creole_footnotes_label: to text/creole')
1058
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.text", creole.to_doc(:text, @opt))
1059
+ end #test_creole_footnotes_label
1060
+
1061
+ def test_creole_footnotes_groupid()
1062
+ creole = Docgenerator::Creole::Creole.new(
1063
+ :name => 'footnotes_group',
1064
+ :content => <<creole
1065
+ Text<<footnote|This is a footnote|>>
1066
+ more text<<footnote|This is a footnote in group g1|groupid=g1>>
1067
+ ----
1068
+ <<footnotes>>
1069
+ ----
1070
+ <<footnotes|g1>>
1071
+ creole
1072
+ )
1073
+ assert_equal_filecontent( "expected_creole/#{__method__}.html", creole.to_doc(:html, @opt))
1074
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.latex", creole.to_doc(:latex, @opt))
1075
+ #~ $log.warn('test_creole_footnotes_label: to_context')
1076
+ #~ #~ assert_equal_filecontent( "expected_creole/#{__method__}.context", creole.to_doc(:context))
1077
+ #~ $log.warn('test_creole_footnotes_label: to wiki/creole')
1078
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}l.creole", creole.to_doc(:creole, @opt))
1079
+ #~ $log.warn('test_creole_footnotes_label: to text/creole')
1080
+ #~ assert_equal_filecontent( "expected_creole/#{__method__}.text", creole.to_doc(:text, @opt))
1081
+ end #test_creole_footnotes_label
1082
+ =begin rdoc
1083
+ Footnotes in tabulars don't work.
1084
+ =end
1085
+ def test_creole_footnotes_in_tabular()
1086
+ return
1087
+ #check for warning?
1088
+
1089
+ creole = Docgenerator::Creole::Creole.new(
1090
+ :name => 'footnotes',
1091
+ :content => <<creole
1092
+ <<<tabular
1093
+ |!columns=1
1094
+ |<<footnote|This is a footnote>>
1095
+ >>>
1096
+ ----
1097
+ <<footnotes>>
1098
+ creole
1099
+ )
1100
+ $log.warn('test_creole_footnotes_in_tabular: html')
1101
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes_in_tabular.html", creole.to_doc(:html, @opt))
1102
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes_in_tabular.latex", creole.to_doc(:latex, @opt))
1103
+ #~ $log.warn('test_creole_footnotes_in_tabular: to_context')
1104
+ #~ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes_in_tabular.context", creole.to_doc(:context))
1105
+ #~ $log.warn('test_creole_footnotes_in_tabular: to wiki/creole')
1106
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes_in_tabular.creole", creole.to_doc(:creole, @opt))
1107
+ #~ $log.warn('test_creole_footnotes_in_tabular: to text/creole')
1108
+ #~ assert_equal_filecontent( "expected_creole/test_creole_footnotes_in_tabular.text", creole.to_doc(:text, @opt))
1109
+ end #test_creole_footnotes_in_tabular
1110
+ end #Test_creole_footnote
1111
+
1112
+ class Test_creole_short_html < MiniTest::Test
1113
+ def setup()
1114
+ #Avoid warnings about missing logger in to_doc
1115
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
1116
+ end
1117
+ def test_creole_short_html()
1118
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
1119
+ before
1120
+ {{html|<em>this is only for HTML</em>}}
1121
+ after
1122
+ creole
1123
+ )
1124
+ #Really like this? Or should there be no paragraph?
1125
+ assert_equal_filecontent( "expected_creole/test_creole_short_html.html", creole.to_doc(:html, @opt))
1126
+ assert_equal_filecontent( "expected_creole/test_creole_short_html.latex", creole.to_doc(:latex, @opt))
1127
+ $log.warn('test_creole_short_html: to_context')
1128
+ #~ assert_equal_filecontent( "expected_creole/test_creole_short_html.context", creole.to_doc(:context))
1129
+ $log.warn('test_creole_short_html: to wiki/creole')
1130
+ #~ assert_equal_filecontent( "expected_creole/test_creole_short_html.creole", creole.to_doc(:creole, @opt))
1131
+ assert_equal_filecontent( "expected_creole/test_creole_short_html.text", creole.to_doc(:text, @opt))
1132
+ end #test_creole_short_html
1133
+ end #Test_creole_short_html
1134
+
1135
+
1136
+ class Test_creole_characters < MiniTest::Test
1137
+ def setup()
1138
+ #Avoid warnings about missing logger in to_doc
1139
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
1140
+ end
1141
+ def test_creole_characters_all()
1142
+ creole = Docgenerator::Creole::Creole.new(
1143
+ :name => 'characters_all',
1144
+ #~ :content => Creole::CHARACTERS.keys.sort.map{|char| "*#{char}" }.join("\n")
1145
+ :content => Docgenerator::Creole::CHARACTERS.sort.map{|char, o| "* #{o.class}: #{char}"}.join("\n")
1146
+ )
1147
+ assert_equal_filecontent( "expected_creole/test_creole_characters_all.html", creole.to_doc(:html, @opt))
1148
+
1149
+ $log.warn('test_creole_characters_all: to_latex Dollar Missing escape mechanism')
1150
+ assert_equal_filecontent( "expected_creole/test_creole_characters_all.latex", creole.to_doc(:latex, @opt))
1151
+ $log.warn('test_creole_characters_all: to_context')
1152
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_all.context", creole.to_doc(:context))
1153
+ $log.warn('test_creole_characters_all: to wiki/creole')
1154
+ #~ assert_equal(creole.source.join , creole.to_doc(:creole, @opt))
1155
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_all.creole", creole.source.join)
1156
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_all.creole", creole.to_doc(:creole, @opt))
1157
+ $log.warn('test_creole_characters_all: to text/creole')
1158
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_all.text", creole.to_doc(:text, @opt))
1159
+ end #test_creole_characters_all
1160
+ def test_creole_characters_special()
1161
+ creole = Docgenerator::Creole::Creole.new(
1162
+ :name => 'characters_special',
1163
+ :content => <<creole
1164
+ Special Characters:
1165
+ *$ - Dollar
1166
+ *% - Percent
1167
+ *=> Rightarrow
1168
+ *-> rightarrow
1169
+ *_ Underscore
1170
+ creole
1171
+ )
1172
+ assert_equal_filecontent( "expected_creole/test_creole_characters_special.html", creole.to_doc(:html, @opt))
1173
+ assert_equal_filecontent( "expected_creole/test_creole_characters_special.latex", creole.to_doc(:latex, @opt))
1174
+ $log.warn('test_creole_characters_special: to_context')
1175
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_special.context", creole.to_doc(:context))
1176
+ $log.warn('test_creole_characters_special: to wiki/creole')
1177
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_special.creole", creole.to_doc(:creole, @opt))
1178
+ $log.warn('test_creole_characters_special: to text/creole')
1179
+ #~ assert_equal_filecontent( "expected_creole/test_creole_characters_special.text", creole.to_doc(:text, @opt))
1180
+ end #test_creole_characters_special
1181
+
1182
+ #This is also a test for multiple inclusions in one line.
1183
+ def test_creole_shy()
1184
+ creole = Docgenerator::Creole::Creole.new(
1185
+ :name => 'shy',
1186
+ :content => <<creole
1187
+ Donau{{shy}}dampf{{shy}}schiff{{shy}}fahrt
1188
+
1189
+ Donau{{-}}dampf{{-}}schiff{{-}}fahrt
1190
+ creole
1191
+ )
1192
+ assert_equal_filecontent( "expected_creole/test_creole_shy.html", creole.to_doc(:html, @opt))
1193
+ assert_equal_filecontent( "expected_creole/test_creole_shy.latex", creole.to_doc(:latex, @opt))
1194
+ $log.warn('test_creole_shy: to_context')
1195
+ #~ assert_equal_filecontent( "expected_creole/test_creole_shy.context", creole.to_doc(:context))
1196
+ assert_equal_filecontent( "expected_creole/test_creole_shy.creole", creole.to_doc(:creole, @opt))
1197
+ assert_equal_filecontent( "expected_creole/test_creole_shy.text", creole.to_doc(:text, @opt))
1198
+ end #test_creole_shy
1199
+
1200
+ end #Test_creole_characters
1201
+
1202
+ class Test_creole_inline_ruby < MiniTest::Test
1203
+ def setup()
1204
+ #Avoid warnings about missing logger in to_doc
1205
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
1206
+ end
1207
+ def self.ruby_test()
1208
+ return '*hallo welt'
1209
+ end
1210
+ def test_creole_inline_ruby_raw()
1211
+ creole = Docgenerator::Creole::Creole.new(
1212
+ :name => 'inline_ruby_raw',
1213
+ :content => <<creole
1214
+ The following Rubycode is added as raw text.
1215
+ 1 + 1 = <<ruby_raw|1+1>>
1216
+
1217
+ <<ruby_raw|Test_creole_inline_ruby::ruby_test>>
1218
+ creole
1219
+ )
1220
+ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby_raw.html", creole.to_doc(:html, @opt))
1221
+ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby_raw.latex", creole.to_doc(:latex, @opt))
1222
+ $log.warn('test_creole_inline_ruby_raw: to_context')
1223
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby_raw.context", creole.to_doc(:context))
1224
+ $log.warn('test_creole_inline_ruby_raw: to wiki/creole')
1225
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby_raw.creole", creole.to_doc(:creole, @opt))
1226
+ $log.warn('test_creole_inline_ruby_raw: to text/creole')
1227
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby_raw.text", creole.to_doc(:text, @opt))
1228
+ end #test_creole_inline_ruby_raw
1229
+ def test_creole_inline_ruby()
1230
+ creole = Docgenerator::Creole::Creole.new(
1231
+ :name => 'inline_ruby',
1232
+ :content => <<creole
1233
+ The following ruby code is added and parsed by the wiki.
1234
+ *1 + 1 = <<ruby|1+1>>
1235
+ <<ruby|Test_creole_inline_ruby::ruby_test>>
1236
+ creole
1237
+ )
1238
+ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby.html", creole.to_doc(:html, @opt))
1239
+ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby.latex", creole.to_doc(:latex, @opt))
1240
+ $log.warn('test_creole_inline_ruby: to_context')
1241
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby.context", creole.to_doc(:context))
1242
+ $log.warn('test_creole_inline_ruby: to wiki/creole')
1243
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby.creole", creole.to_doc(:creole, @opt))
1244
+ $log.warn('test_creole_inline_ruby: to text/creole')
1245
+ #~ assert_equal_filecontent( "expected_creole/test_creole_inline_ruby.text", creole.to_doc(:text, @opt))
1246
+ end #test_creole_inline_ruby
1247
+ def test_creole_countdown()
1248
+ creole = Docgenerator::Creole::Creole.new(
1249
+ :name => 'countdown',
1250
+ :content => <<creole
1251
+ Countdown: <<ruby_raw|(1..10).to_a.reverse.join("-")>>
1252
+ creole
1253
+ )
1254
+ assert_equal_filecontent( "expected_creole/test_creole_countdown.html", creole.to_doc(:html, @opt))
1255
+ assert_equal_filecontent( "expected_creole/test_creole_countdown.latex", creole.to_doc(:latex, @opt))
1256
+ $log.warn('test_creole_countdown: to_context')
1257
+ #~ assert_equal_filecontent( "expected_creole/test_creole_countdown.context", creole.to_doc(:context))
1258
+ $log.warn('test_creole_countdown: to wiki/creole')
1259
+ #~ assert_equal_filecontent( "expected_creole/test_creole_countdown.creole", creole.to_doc(:creole, @opt))
1260
+ $log.warn('test_creole_countdown: to text/creole')
1261
+ #~ assert_equal_filecontent( "expected_creole/test_creole_countdown.text", creole.to_doc(:text, @opt))
1262
+ end #test_creole_countdown
1263
+
1264
+ end #Test_creole_inline_ruby
1265
+
1266
+ class Test_creole_ignore < MiniTest::Test
1267
+ def setup()
1268
+ #Avoid warnings about missing logger in to_doc
1269
+ @opt = { :log => Docgenerator::DOCGENERATOR_DEFAULT_LOGGER }
1270
+ end
1271
+ def test_creole_ignore()
1272
+ creole = Docgenerator::Creole::Creole.new(
1273
+ :name => 'ignore',
1274
+ :ignore => /^#~.*$/,
1275
+ :log => $tmplog, #catch info about comment
1276
+ :content => <<creole
1277
+ Text
1278
+ #~ this is a comment
1279
+ more text
1280
+ creole
1281
+ )
1282
+ assert_equal_filecontent( "expected_creole/test_creole_ignore.html", creole.to_doc(:html, @opt))
1283
+ assert_equal_filecontent( "expected_creole/test_creole_ignore.latex", creole.to_doc(:latex, @opt))
1284
+ $log.warn('test_creole_ignore: to_context')
1285
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ignore.context", creole.to_doc(:context))
1286
+ $log.warn('test_creole_ignore: to wiki/creole')
1287
+ #~ assert_equal_filecontent( "expected_creole/test_creole_ignore.creole", creole.to_doc(:creole, @opt))
1288
+ assert_equal_filecontent( "expected_creole/test_creole_ignore.text", creole.to_doc(:text, @opt))
1289
+ end #test_creole_ignore
1290
+
1291
+ def test_creole_comment()
1292
+ creole = Docgenerator::Creole::Creole.new(
1293
+ :name => 'comment',
1294
+ :content => <<creole
1295
+ ==Titel 1==
1296
+ Text
1297
+ <<<comment
1298
+ This is a comment.
1299
+ It's part of the document, but not visible to readers.
1300
+ >>>
1301
+ Text after
1302
+ creole
1303
+ )
1304
+ assert_equal_filecontent( "expected_creole/test_creole_comment.html", creole.to_doc(:html, @opt))
1305
+ assert_equal_filecontent( "expected_creole/test_creole_comment.latex", creole.to_doc(:latex, @opt))
1306
+ assert_equal_filecontent( "expected_creole/test_creole_comment.context", creole.to_doc(:context))
1307
+ assert_equal_filecontent( "expected_creole/test_creole_comment.creole", creole.to_doc(:creole, @opt))
1308
+ #~ assert_raise( RuntimeError ) { creole.to_doc(:text, @opt) }
1309
+ $log.warn('test_creole_comment: to text')
1310
+ #~ assert_equal_filecontent( "expected_creole/test_creole_comment.text", creole.to_doc(:text, @opt))
1311
+ end #test_creole_comment
1312
+
1313
+ end #Test_creole_ignore
1314
+
1315
+
1316
+ def newtest(text, with_class = false )
1317
+ code = ''
1318
+ code << "class Test_creole_#{text} < MiniTest::Test\n" if with_class
1319
+ code << <<code
1320
+ def test_creole_#{text}()
1321
+ creole = Docgenerator::Creole::Creole.new(
1322
+ :name => '#{text}',
1323
+ :content => <<creole
1324
+ ==Titel 1==
1325
+ Text
1326
+ creole
1327
+ )
1328
+ assert_equal_filecontent( "expected_creole/test_creole_#{text}.html", creole.to_doc(:html, @opt))
1329
+ assert_equal_filecontent( "expected_creole/test_creole_#{text}.latex", creole.to_doc(:latex, @opt))
1330
+ $log.warn('test_creole_#{text}: to_context')
1331
+ #~ assert_equal_filecontent( "expected_creole/test_creole_#{text}.context", creole.to_doc(:context))
1332
+ $log.warn('test_creole_#{text}: to wiki/creole')
1333
+ assert_equal_filecontent( "expected_creole/test_creole_#{text}.creole", creole.to_doc(:creole, @opt))
1334
+ assert_equal_filecontent( "expected_creole/test_creole_#{text}.text", creole.to_doc(:text, @opt))
1335
+ end #test_creole_#{text}
1336
+ code
1337
+ code << "end #Test_creole_#{text}\n" if with_class
1338
+ puts code
1339
+ end
1340
+ #~ newtest('links_implicit_end')
1341
+ #~ newtest('tabular', true)
1342
+ #~ newtest('comment')
1343
+ #~ newtest('ignore', true)
1344
+
1345
+ __END__
1346
+ = Escapes =
1347
+ Normal Link: http://wikicreole.org/ - now same link, but escaped: ~http://wikicreole.org/
1348
+
1349
+ Normal asterisks: ~**not bold~**
1350
+
1351
+ a tilde alone: ~
1352
+
1353
+ a tilde escapes itself: ~~xxx
1354
+
1355
+ --------------------------------------------
1356
+ Meine Erweiterungen
1357
+ --------------------------------------------
1358
+
1359
+ def test_creole_amazon()
1360
+ creole = Docgenerator::Creole::Creole.new(:content => <<creole
1361
+ {{amazon|asin=B000AFEJAM}}
1362
+
1363
+ {{amazon|asin=B000AFEJAM|right}}
1364
+ creole
1365
+ )
1366
+ assert_equal_filecontent( "expected_creole/test_creole_amazon.html", creole.to_doc(:html, @opt))
1367
+ assert_equal_filecontent( "expected_creole/test_creole_amazon.latex", creole.to_doc(:latex, @opt))
1368
+ $log.warn('test_creole_amazon: to_context')
1369
+ #~ assert_equal_filecontent( "expected_creole/test_creole_amazon.context", creole.to_doc(:context))
1370
+ assert_equal_filecontent( "expected_creole/test_creole_amazon.creole", creole.to_doc(:creole, @opt))
1371
+ assert_equal_filecontent( "expected_creole/test_creole_amazon.text", creole.to_doc(:text, @opt))
1372
+ end
1373
+
1374
+ Option :ignore
1375
+
1376
+ ---------
1377
+ neue Ideen
1378
+ #~ {{{div:css=sss
1379
+ #~ {{{p:css=sss