@Test
public void testConvertHTMLMarkupToRTF() throws Exception {

    // test correct escaping of reserved RTF chars
    Assert.assertTrue(convert("Zeile mit \\ in der Mitte").contains("\\\\"));
    Assert.assertTrue(convert("Zeile mit { in der Mitte").contains("\\{"));
    Assert.assertTrue(convert("Zeile mit } in der Mitte").contains("\\}"));
    // test correct detection of HTML <ol> and <ul> lists
    Assert.assertTrue(convert("<ol> <li>eins</li> <li>zwei</li> </ol>").contains("listid1"));
    Assert.assertFalse(convert("<ol> <li>eins</li> <li>zwei</li> </ol>").contains("listid2"));
    Assert.assertTrue(convert("<ul> <li>eins</li> <li>zwei</li> </ul>").contains("listid1"));
    Assert.assertFalse(convert("<ul> <li>eins</li> <li>zwei</li> </ul>").contains("listid2"));
    Assert.assertTrue(convert("<ol> <li>one number</li> <li>two number</li> </ol><ul> <li>one bullet</li> <li>two bullet</li> </ul>").contains("listid1"));
    Assert.assertTrue(convert("<ol> <li>one number</li> <li>two number</li> </ol><ul> <li>one bullet</li> <li>two bullet</li> </ul>").contains("listid2"));
    Assert.assertFalse(convert("<ol> <li>one number</li> <li>two number</li> </ol><ul> <li>one bullet</li> <li>two bullet</li> </ul>").contains("listid3"));
    Assert.assertTrue(convert("<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol>").contains(
            "listid1"));
    Assert.assertTrue(convert("<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol>").contains(
            "listid2"));
    Assert.assertTrue(convert("<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol>").contains(
            "listid3"));
    Assert.assertFalse(convert("<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol>").contains(
            "listid4"));
    Assert.assertTrue(convert(
            "<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul>")
            .contains("listid1"));
    Assert.assertTrue(convert(
            "<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul>")
            .contains("listid2"));
    Assert.assertTrue(convert(
            "<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul>")
            .contains("listid3"));
    Assert.assertTrue(convert(
            "<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul>")
            .contains("listid4"));
    Assert.assertFalse(convert(
            "<ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul><ol> <li>eins</li> <li>zwei</li> </ol><ul> <li>eins</li> <li>zwei</li> </ul>")
            .contains("listid5"));
}