001: package com.ecyrd.jspwiki.htmltowiki;
002:
003: import junit.framework.Test;
004: import junit.framework.TestCase;
005: import junit.framework.TestSuite;
006:
007: /**
008: * JUnit test cases for Converting Html to Wiki Markup.
009: *
010: * @author Sebastian Baltes (sbaltes@gmx.com)
011: */
012: public class HtmlStringToWikiTranslatorTest extends TestCase {
013: HtmlStringToWikiTranslator html2wiki;
014:
015: public static void main(String[] args) {
016: junit.textui.TestRunner
017: .run(HtmlStringToWikiTranslatorTest.class);
018: }
019:
020: public HtmlStringToWikiTranslatorTest(String arg0) {
021: super (arg0);
022: }
023:
024: public void setUp() {
025: html2wiki = new HtmlStringToWikiTranslator();
026: }
027:
028: public void testAnchor() throws Exception {
029: assertEquals(
030: "[startup.bat]",
031: html2wiki
032: .translate(" <a class=\"attachment\" href=\"attach?page=startup.bat\">startup.bat</a><a href=\"PageInfo.jsp?page=startup.bat\"><img src=\"images/attachment_small.png\" alt=\"(att)\" border=\"0\"></a>"));
033:
034: assertEquals(
035: "[http://www.startup.de]",
036: html2wiki
037: .translate("<a class=\"external\" href=\"http://www.startup.de\">http://www.startup.de</a><img class=\"outlink\" src=\"images/out.png\" alt=\"\">"));
038:
039: assertEquals(
040: " [AbsolutelyTestNotExisting]\n\n",
041: html2wiki
042: .translate("<table class=\"imageplugin\" align=\"left\" border=\"0\">\r\n"
043: + "<tbody><tr><td><br>\r\n"
044: + "</td></tr>\r\n"
045: + "</tbody></table>\r\n"
046: + "\r\n"
047: + " [AbsolutelyTestNotExisting]<p>\r\n"
048: + "<table class=\"imageplugin\" align=\"left\" border=\"0\">\r\n"
049: + "\r\n"
050: + "<tbody>\r\n"
051: + "</tbody></table>\r\n"
052: + "\r\n"
053: + "</p><p>\r\n" + "</p>"));
054:
055: assertEquals(
056: "[ThisPageDoesNotExist]",
057: html2wiki
058: .translate("<a href=\"Edit.jsp?page=ThisPageDoesNotExist\">ThisPageDoesNotExist</a>"));
059:
060: assertEquals(
061: "[/JSPWiki/wysiwyg/FCKeditor/editor/images/smiley/msn/sad_smile.gif]",
062: html2wiki
063: .translate("<img src=\"/JSPWiki/wysiwyg/FCKeditor/editor/images/smiley/msn/sad_smile.gif\" alt=\"\"/>"));
064:
065: assertEquals(
066: "[AugumentedWikiLinks|AugumentedWikiLinks|title='my \"custom\" title' target='_blank']",
067: html2wiki
068: .translate("<a class=\"wikipage\" href=\"Wiki.jsp?page=AugumentedWikiLinks\" target=\"_blank\" title=\"my 'custom' title\">AugumentedWikiLinks</a>"));
069: }
070:
071: public void testTable() throws Exception {
072: assertEquals(
073: "a\n| erste\n",
074: html2wiki
075: .translate("a <table border=\"1\"> <tbody><tr> <td> erste</td> </tr> </tbody> </table>"));
076:
077: assertEquals(
078: "|| Throalisches Jahr || Ereignis\n"
079: + "| 100 v. TH | Elianer Messias übersetzt die tausendjährigen Bücher von Harrow.\n"
080: + "| 50 v. TH | Gründung Nehr?eshams und der ewigen Bibliothek.\n",
081: html2wiki
082: .translate("<table class=\"wikitable\" border=\"1\"><tbody><tr><th> Throalisches Jahr </th><th> Ereignis</th></tr>\n"
083: + "<tr><td> 100 v. TH</td><td> Elianer Messias übersetzt die tausendjährigen Bücher von Harrow.</td></tr>\n"
084: + "<tr><td> 50 v. TH</td><td> Gründung Nehr?eshams und der ewigen Bibliothek.</td></tr>\n"
085: + "</tbody></table>"));
086:
087: assertEquals(
088: "|| Throalisches Jahr || Ereignis\n"
089: + "| 100 v. TH | Elianer Messias übersetzt die tausendjährigen Bücher von Harrow.\n"
090: + "| 50 v. TH | Gründung Nehr?eshams und der ewigen Bibliothek.\n\u00A0",
091: html2wiki
092: .translate("<table class=\"wikitable\" border=\"1\"><tbody><tr><th> Throalisches Jahr </th><th> Ereignis</th></tr>\n"
093: + "<tr><td> 100 v. TH</td><td> Elianer Messias übersetzt die tausendjährigen Bücher von Harrow.</td></tr>\n"
094: + "<tr><td> 50 v. TH</td><td> Gründung Nehr?eshams und der ewigen Bibliothek.</td></tr>\n"
095: + "</tbody></table> "));
096:
097: assertEquals(
098: "| 3. Rang | Name des Helden, den der Bogen töten sollte.\n"
099: + "| Fähigkeit | Bonus auf die Initiative von 1\n",
100: html2wiki
101: .translate("<table class=\"wikitable\" border=\"1\"><tbody><tr><td> 3. Rang</td><td> Name des Helden, den der Bogen töten sollte.</td></tr>\n"
102: + "<tr><td> Fähigkeit</td><td> Bonus auf die Initiative von 1</td></tr></tbody></table></p><p>"));
103:
104: assertEquals(
105: "| Name: [Christian|ChristianS] \\\\ Geschicklichkeit: 2 \\\\ Hang zu perversen Sexorgien. Jongliert mit Worten und Köpfen. \\\\ [Berian Nachtschleicher|Berian] \\\\ [XLerul] \\\\ [Effifot Erif|EffifotErif]\n",
106: html2wiki
107: .translate("<table class=\"wikitable\" border=\"1\"><tbody><tr><td> Name: <a class=\"wikipage\" href=\"Wiki.jsp?page=ChristianS\">Christian</a> <br> Geschicklichkeit: 2 <br> Hang zu perversen Sexorgien. Jongliert mit Worten und Köpfen. <br> <a class=\"wikipage\" href=\"Wiki.jsp?page=Berian\">Berian Nachtschleicher</a> <br> <a class=\"wikipage\" href=\"Wiki.jsp?page=XLerul\">XLerul</a> <br> <a class=\"wikipage\" href=\"Wiki.jsp?page=EffifotErif\">Effifot Erif</a></td></tr> </tbody></table>"));
108:
109: }
110:
111: public void testRulers() throws Exception {
112: assertEquals("a\n----\nb", html2wiki.translate("a<hr/>b"));
113: assertEquals("by\n" + "----\n" + "Dies", html2wiki
114: .translate("by\n" + "<hr>\n" + "Dies"));
115:
116: }
117:
118: public void testParagraphs() throws Exception {
119: assertEquals("a\nb\nc", html2wiki.translate("a<p>b</p>c"));
120:
121: assertEquals("ab", html2wiki.translate("a<p></p>b"));
122:
123: assertEquals("a\n\nb", html2wiki.translate("a<p>\n</p>b"));
124:
125: assertEquals(
126: "\n\\\\\n__Willkommen__ \\\\\n\\\\\nUnd niemand wird sie sehen \\\\\nEine Page ...\n\nAls Unterthema\n",
127: html2wiki
128: .translate("<p><br />\n<strong>Willkommen</strong> <br />\n<br />\nUnd niemand wird sie sehen <br />\nEine Page ...</p>\n<p>Als Unterthema</p>"));
129:
130: assertEquals(
131: "\n\u00A0\n\nTop\n\nBottom\n\n\n",
132: html2wiki
133: .translate("<p> </p><p>Top</p>\n<p></p>\n<p></p>\n<p>Bottom</p> <p> </p>"));
134: }
135:
136: public void testWhitespace() throws Exception {
137: assertEquals("", html2wiki.translate(""));
138:
139: assertEquals("", html2wiki.translate(" "));
140:
141: assertEquals("", html2wiki.translate("<div>\n\n\n</div>"));
142:
143: assertEquals("a ", html2wiki.translate("a\n \n\n \t\r\n"));
144: }
145:
146: public void testLists() throws Exception {
147: assertEquals("\n* Punkt 1\n* Punkt 2\n", html2wiki
148: .translate("<ul><li>Punkt 1</li><li>Punkt 2</li></ul>"));
149:
150: assertEquals("\n# Punkt 1\n# Punkt 2\n", html2wiki
151: .translate("<ol><li>Punkt 1</li><li>Punkt 2</li></ol>"));
152:
153: assertEquals(
154: "\n# Punkt 1\n## Punkt 2\n\n",
155: html2wiki
156: .translate("<ol><li>Punkt 1<ol><li>Punkt 2</li></ol></li></ol>"));
157:
158: assertEquals(
159: "\n* Punkt 1\n** Punkt 2\n\n",
160: html2wiki
161: .translate("<ul><li>Punkt 1<ul><li>Punkt 2</li></ul></li></ul>"));
162:
163: assertEquals(
164: "\n* Punkt 1\n*# Punkt 2\n\n",
165: html2wiki
166: .translate("<ul><li>Punkt 1<ol><li>Punkt 2</li></ol></li></ul>"));
167:
168: assertEquals(
169: "\n# list item 1\n# list item 2\n## list item 2.1\n##* list item 2.1.1\n##* list item 2.1.2\n## list item 2.2\n# list item 3\n## list item 3.1\n##* list item 3.1.1\n## list item 3.2\n# list item 4\n",
170: html2wiki
171: .translate("<ol> <li>list item 1</li> <li>list item 2 <ol> <li>list item 2.1 <ul> <li>list item 2.1.1</li> <li>list item 2.1.2</li> </ul> </li> <li>list item 2.2</li> </ol> </li> <li>list item 3 <ol> <li>list item 3.1 <ul> <li>list item 3.1.1</li> </ul> </li> <li>list item 3.2</li> </ol> </li> <li>list item 4</li> </ol>"));
172:
173: assertEquals(
174: "\n* Diese Karte kann von jedem editiert und um neue Links erweitert werden. \\\\Klickt einfach unten neben der Karte auf {{{[edit]}}}\n",
175: html2wiki
176: .translate("<ul><li> Diese Karte kann von jedem editiert und um neue Links erweitert werden.<br>Klickt einfach unten neben der Karte auf <span style=\"font-family: monospace; white-space: pre;\">[edit]</span></li></ul>"));
177:
178: assertEquals(
179: "\n* Diese Karte kann von jedem editiert und um neue Links erweitert werden. \\\\Klickt einfach unten neben der Karte auf {{{[edit]}}}\n",
180: html2wiki
181: .translate("<ul><li> Diese Karte kann von jedem editiert und um neue Links erweitert werden.<br>Klickt einfach unten neben der Karte auf <span style=\"font-family: monospace; white-space: pre;\">[edit]</span></li></ul>"));
182:
183: }
184:
185: public void testPre() throws Exception {
186:
187: assertEquals("\n{{{\nhallo\n}}}\n", html2wiki
188: .translate("<pre>hallo</pre>"));
189:
190: assertEquals("\n{{{\nHallo\nWelt!\n\n\n}}}\n", html2wiki
191: .translate("<pre>Hallo<br>Welt!<br><br></pre>"));
192:
193: assertEquals(
194: "\n{{{\n\n\n\n\nHallo\n\n\n\nWelt!\n\n\n\n\n}}}\n",
195: html2wiki
196: .translate("\n\n\n\n<pre>\n\n\n\nHallo\n\n\n\nWelt!\n\n\n\n</pre>\n\n\n\n"));
197:
198: assertEquals(
199: "\n{{{\n\n\n* Baltramon \n lasdjfh\n\n\n}}}\n",
200: html2wiki
201: .translate("<pre>\n\n* Baltramon \n lasdjfh\n\n</pre>"));
202:
203: /*
204: // The style "font-family: courier new" is no longer translated as monospace text, so this test case is no longer needed.
205: assertEquals( "Diese Karte{{{ kann }}} von", html2wiki
206: .translate( "Diese Karte<span style=\"font-family: courier new,courier,mono;\"> kann </span> von" ) );
207: */
208:
209: assertEquals(
210: "Fahrt einfac{{{h mit\u00A0\u00A0 \n der \u00A0 Maus}}} drueber",
211: html2wiki
212: .translate("Fahrt einfac<span style=\"font-family: monospace; white-space: pre;\">h mit <br> der Maus</span> drueber"));
213:
214: }
215:
216: public void testTT() throws Exception {
217: assertEquals("{{hallo}}", html2wiki.translate("<tt>hallo</tt>"));
218:
219: assertEquals("{{hallo}}", html2wiki
220: .translate("<code>hallo</code>"));
221: }
222:
223: public void testCenter() throws Exception {
224: assertEquals(
225: "\n%%( text-align: center; )\nHello \\\\\nWorld!\n%%\n",
226: html2wiki
227: .translate("<div style=\"text-align: center;\">Hello<br>World!</div>"));
228:
229: assertEquals(
230: "__%%( text-align: center; display: block; )Hello \\\\World!%%__",
231: html2wiki
232: .translate("<span style=\"font-weight: bold; text-align: center; display: block;\">Hello<br>World!</span>"));
233:
234: }
235:
236: public void testImage() throws Exception {
237: assertEquals(
238: "[{Image src='Homunkulus/homunculus4.jpg' align='left'}]",
239: html2wiki
240: .translate("<table class=\"imageplugin\" align=\"left\" border=\"0\"> <tbody><tr><td><img src=\"attach?page=Homunkulus%2Fhomunculus4.jpg\"></td></tr> </tbody></table>"));
241:
242: assertEquals(
243: "[{Image src=\'AbenteuerQuilpins/Quilpins.jpg\' align=\'left\'}]",
244: html2wiki
245: .translate("<table class=\"imageplugin\" align=\"left\" border=\"0\">\r\n"
246: + "<tbody><tr><td><img src=\"attach?page=AbenteuerQuilpins%2FQuilpins.jpg\"></td></tr>\r\n</tbody>"
247: + "</table>"));
248:
249: assertEquals(
250: "[{Image src=\'AbenteuerQuilpins/Quilpins.jpg\' caption=\'Testing Image\' style=\'font-size: 120%; color: green;\'}]",
251: html2wiki
252: .translate("<table class=\"imageplugin\" style=\"font-size: 120%; color: green;\" border=\"0\">\r\n"
253: + "<caption align=\"bottom\">Testing Image</caption>\r\n"
254: + "<tbody><tr><td><img src=\"attach?page=AbenteuerQuilpins%2FQuilpins.jpg\"></td></tr>\r\n</tbody>"
255: + "</table>"));
256:
257: assertEquals(
258: "[{Image src=\'http://opi.yahoo.com/online?u=YahooUser1234&m=g&t=2\' link=\'http://edit.yahoo.com/config/send_webmesg?.target=YahooUser1234&.src=pg\'}]",
259: html2wiki
260: .translate("<table class=\"imageplugin\" border=\"0\">\r\n"
261: + "<tbody><tr><td>"
262: + "<a href=\"http://edit.yahoo.com/config/send_webmesg?.target=YahooUser1234&.src=pg\">"
263: + "<img src=\"http://opi.yahoo.com/online?u=YahooUser1234&m=g&t=2\">"
264: + "</a></td></tr>\r\n"
265: + "</tbody>"
266: + "</table>"));
267:
268: assertEquals(
269: "[{Image src=\'homunculus4.jpg\' align=\'left\' height=\'100px\' width=\'100px\' alt=\'alt text\' caption=\'caption text\' link=\'http://google.de\' border=\'1\'}]",
270: html2wiki
271: .translate("<table class=\"imageplugin\" align=\"left\" border=\"0\"> \r\n"
272: + " <caption align=\"bottom\">caption text</caption> \r\n"
273: + " <tbody><tr><td>\r\n"
274: + " <a href=\"http://google.de\"><img src=\"homunculus4.jpg\" alt=\"alt text\" border=\"1\" height=\"100px\" width=\"100px\">\r\n"
275: + " </a></td></tr> \r\n"
276: + " </tbody> \r\n" + "</table>"));
277:
278: assertEquals(
279: "[{Image src=\'http://opi.yahoo.com/online?u=YahooUser1234&m=g&t=2\' link=\'http://edit.yahoo.com/config/send_webmesg?.target=YahooUser1234&.src=pg\'}]",
280: html2wiki
281: .translate(" <a href=\"http://edit.yahoo.com/config/send_webmesg?.target=YahooUser1234&.src=pg\">\r\n"
282: + " <img src=\"http://opi.yahoo.com/online?u=YahooUser1234&m=g&t=2\">\r\n"
283: + " </a"));
284:
285: }
286:
287: public void testPlugin() throws Exception {
288: assertEquals(
289: "This is a private homepage done by\n"
290: + "----\n"
291: + "Dies ist eine private, nicht-kommerzielle Homepage von\n"
292: + "[{Text2gif width=\'150\' height=\'100\' \n"
293: + " \n" + "Sebastian L. Baltes \n"
294: + "Lange Str. 53 \n" + "44137 Dortmund \n"
295: + " \n" + "email: info@sorokan.de \n" + "}]\n",
296: html2wiki
297: .translate("This is a private homepage done by\n"
298: + "<hr>\n"
299: + "Dies ist eine private, nicht-kommerzielle Homepage von\n"
300: + "<p>\n"
301: + "[{Text2gif width=\'150\' height=\'100\'\n"
302: + "<br> <br>Sebastian L. Baltes\n"
303: + "<br>Lange Str. 53\n"
304: + "<br>44137 Dortmund\n"
305: + "<br> <br>email: info@sorokan.de\n"
306: + "<br>}]\n" + "</p><p>"));
307:
308: }
309:
310: public void testCSS() throws Exception {
311: assertEquals(
312: "%%( color: rgb(255, 0, 0); )Und niemand wird sie sehen%%, die",
313: html2wiki
314: .translate("<span style=\"color: rgb(255, 0, 0);\">Und niemand wird sie sehen</span>, die"));
315:
316: assertEquals(
317: "\n%%information\nCSS class here\n%%\n\nFont %%( color: #ff9900; font-family: arial; font-size: large; )styling here.%% Some %%( background-color: #ffff00; )more here%%.\n",
318: html2wiki
319: .translate("<div class=\"information\">CSS class here</div>\n"
320: + "<p>Font <font face=\"Arial\" color=\"#ff9900\" size=\"5\">styling here.</font>"
321: + " Some <font style=\"background-color: #ffff00\">more here</font>.</p>"));
322:
323: assertEquals(
324: "\n\n%%( text-align: center; )\nsome leading text %%strike line through this text%% some trailing text\n%%\n\n",
325: html2wiki
326: .translate("<p align=\"center\">some leading text <strike>line through this text</strike> some trailing text</p>"));
327: }
328:
329: public void testParsing() throws Exception {
330: assertEquals("Hello World!", html2wiki
331: .translate("Hello World!"));
332:
333: assertEquals("a", html2wiki.translate("a"));
334:
335: assertEquals("a \\\\b", html2wiki.translate("a<br/>b"));
336:
337: assertEquals("\\\\\\", html2wiki.translate("\\\\\\"));
338:
339: assertEquals("[{Test\nHello World!}]", html2wiki
340: .translate("[{Test\\\\Hello World!}]"));
341:
342: assertEquals("{{{[{Test\\\\Hello World!}]}}}", html2wiki
343: .translate("{{{[{Test\\\\Hello World!}]}}}"));
344:
345: assertEquals(
346: "{{{[{Test\\\\Hello World!}]}}}{{{[{Test\\\\\\\\Hello World!}]}}}[{Test\n\nHello World!}][{Test\n\nHello World!}]",
347: html2wiki
348: .translate("{{{[{Test\\\\Hello World!}]}}}{{{[{Test\\\\\\\\Hello World!}]}}}[{Test\\\\\\\\Hello World!}][{Test\\\\\\\\Hello World!}]"));
349:
350: }
351:
352: public void testBoldAndItalic() throws Exception {
353: assertEquals(
354: "Dies ist __bold__, ''italic'' und __''both''__.",
355: html2wiki
356: .translate("Dies ist <span style=\"font-weight: bold;\">bold</span>, <span style=\"font-style: italic;\">italic</span> und <span style=\"font-style: italic; font-weight: bold;\">both</span>."));
357:
358: assertEquals(
359: "Dies ist __bold__, ''italic'' und __''both''__ 2.",
360: html2wiki
361: .translate("Dies ist <b>bold</b>, <i>italic</i> und <b><i>both</i></b> 2."));
362:
363: assertEquals(
364: "Dies ist __bold__, ''italic'' und __''both''__ 3.",
365: html2wiki
366: .translate("Dies ist <strong>bold</strong>, <em>italic</em> und <strong><em>both</em></strong> 3."));
367:
368: assertEquals(
369: "Wilma: ''Ich möchte hiermal in allerDeutlichkeit sagen! ''",
370: html2wiki
371: .translate("Wilma: <i>Ich möchte hier\nmal in aller\nDeutlichkeit sagen! </i>"));
372:
373: }
374:
375: public void testHeading() throws Exception {
376: assertEquals(
377: "\n!!! Heading 1 should be translated to large heading.\n",
378: html2wiki
379: .translate("<h1>Heading 1 should be translated to large heading.</h1>"));
380:
381: assertEquals(
382: "\n!!! Heading 2 should be translated to large heading.\n",
383: html2wiki
384: .translate("<h2>Heading 2 should be translated to large heading.</h2>"));
385:
386: assertEquals(
387: "\n!! Heading 3 should be translated to medium heading.\n",
388: html2wiki
389: .translate("<h3>Heading 3 should be translated to medium heading.</h3>"));
390:
391: assertEquals(
392: "\n! Heading 4 should be translated to small heading.\n",
393: html2wiki
394: .translate("<h4>Heading 4 should be translated to small heading.</h4>"));
395: }
396:
397: public void testForm() throws Exception {
398: assertEquals(
399: "\n[{FormOpen form='myForm'}]\n\n[{FormClose}]\n",
400: html2wiki
401: .translate("<div class=\"wikiform\">\n<form name=\"myForm\"><input name=\"formname\" value=\"myForm\" type=\"hidden\">\n</div>"));
402:
403: assertEquals(
404: "[{FormInput type='hidden' name='myHiddenField' value='myHiddenField'}]myHiddenField",
405: html2wiki
406: .translate("<input name=\"nbf_myHiddenField\" value=\"myHiddenField\" type=\"hidden\">myHiddenField"));
407:
408: assertEquals(
409: "[{FormInput type='checkbox' name='myCheckbox' value='myCheckbox' checked='checked'}]myCheckbox",
410: html2wiki
411: .translate("<input checked=\"checked\" value=\"myCheckbox\" name=\"nbf_myCheckbox\" type=\"checkbox\">myCheckbox"));
412:
413: assertEquals(
414: "[{FormInput type='radio' name='myRadioButton' value='myRadioButton'}]myRadioButton",
415: html2wiki
416: .translate("<input name=\"nbf_myRadioButton\" value=\"myRadioButton\" type=\"radio\">myRadioButton"));
417:
418: assertEquals(
419: "[{FormInput type='button' name='myButton' value='myButton'}]myButton",
420: html2wiki
421: .translate("<input name=\"nbf_myButton\" value=\"myButton\" type=\"button\">myButton"));
422:
423: assertEquals(
424: "[{FormTextarea name='myTextarea' rows='6' cols='50'}]myTextarea",
425: html2wiki
426: .translate("<textarea cols=\"50\" name=\"nbf_myTextarea\" rows=\"6\"></textarea>myTextarea"));
427:
428: assertEquals(
429: "[{FormSelect name='mySelectionList' value='apple;*orange;pear'}]mySelectList",
430: html2wiki
431: .translate("<select name=\"nbf_mySelectionList\">\n"
432: + "<option value=\"apple\">apple</option>\n"
433: + "<option selected=\"selected\" value=\"orange\">orange</option>\n"
434: + "<option value=\"pear\">pear</option>\n"
435: + "</select>mySelectList"));
436:
437: }
438:
439: public void testDefinitionList() throws Exception {
440: assertEquals(
441: "\n;__Priority__:High\n\n;__TODO Name__:Initialization\n\n;__Requester__:John Smith\n",
442: html2wiki
443: .translate("<dl><dt><b>Priority</b></dt><dd>High</dd></dl>\n"
444: + "<dl><dt><b>TODO Name</b></dt><dd>Initialization</dd></dl>\n"
445: + "<dl><dt><b>Requester</b></dt><dd>John Smith</dd></dl>\n"));
446:
447: assertEquals(
448: "Some text here\n;:(A)indented comment here\n\n;:(B)another comment here\n",
449: html2wiki
450: .translate("Some text here\n<dl><dt></dt><dd>(A)indented comment here</dd></dl>\n"
451: + "<dl><dt></dt><dd>(B)another comment here</dd></dl>\n"));
452:
453: assertEquals(
454: "\n;__New Page Name__:[{FormInput type='text' name='newPageName'}]\n",
455: html2wiki
456: .translate("\n<dl><dt><b>New Page Name</b></dt><dd><input name=\"nbf_newPageName\" type=\"text\"></dd></dl>\n"));
457: }
458:
459: public static Test suite() {
460: return new TestSuite(HtmlStringToWikiTranslatorTest.class);
461: }
462:
463: }
|