001package daikon.test.config;
002
003import static org.junit.Assert.assertEquals;
004
005import daikon.config.*;
006import junit.framework.*;
007import org.junit.Test;
008
009public class HtmlToTexinfoTest {
010
011  @Test
012  public void testHtmlToTexinfo() {
013    testHtmlToTexinfoHelper("some &lt;text&gt; &amp; I like {it}", "some <text> & I like @{it@}");
014    testHtmlToTexinfoHelper(
015        "The <tt>--conf_limit</tt> command-line option to Daikon",
016        "The @code{--conf_limit} command-line option to Daikon");
017    testHtmlToTexinfoHelper(
018        "The <code>--conf_limit</code> command-line option to Daikon",
019        "The @code{--conf_limit} command-line option to Daikon");
020  }
021
022  private void testHtmlToTexinfoHelper(String in, String expected) {
023    String actual = HtmlToTexinfo.htmlToTexinfo(in);
024    assertEquals(expected, actual);
025  }
026
027  @Test
028  public void testJavadocHtmlToTexinfo() {
029    // Same as for testHtmlToTexinfo
030    testJavadocHtmlToTexinfoHelper(
031        "some &lt;text&gt; &amp; I like {it}", "some <text> & I like @{it@}");
032    testJavadocHtmlToTexinfoHelper(
033        "The <tt>--conf_limit</tt> command-line option to Daikon",
034        "The @code{--conf_limit} command-line option to Daikon");
035    testJavadocHtmlToTexinfoHelper(
036        "The <code>--conf_limit</code> command-line option to Daikon",
037        "The @code{--conf_limit} command-line option to Daikon");
038
039    // Additional test casess
040    testJavadocHtmlToTexinfoHelper(
041        "Split bi-implications {@code a <==> b} into two separate implications {@code a ==> b} and"
042            + " {@code b ==> a})",
043        "Split bi-implications @code{a <==> b} into two separate implications @code{a ==> b} and"
044            + " @code{b ==> a})");
045    testJavadocHtmlToTexinfoHelper(
046        "     * {@code {e1, e2, e3, ...} subset of x[]}.",
047        "     * @code{@{e1, e2, e3, ...@} subset of x[]}.");
048  }
049
050  private void testJavadocHtmlToTexinfoHelper(String in, String expected) {
051    String actual = HtmlToTexinfo.javadocHtmlToTexinfo(in);
052    assertEquals(expected, actual);
053  }
054}