Search in sources :

Example 1 with HtmlParagraph

use of com.gargoylesoftware.htmlunit.html.HtmlParagraph in project maven-doxia-sitetools by apache.

the class AptVerifier method verify.

/**
 * {@inheritDoc}
 */
public void verify(String file) throws Exception {
    HtmlPage page = htmlPage(file);
    assertNotNull(page);
    HtmlElement element = page.getHtmlElementById("contentBox");
    assertNotNull(element);
    HtmlDivision division = (HtmlDivision) element;
    assertNotNull(division);
    Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
    // ----------------------------------------------------------------------
    // 
    // ----------------------------------------------------------------------
    HtmlSection section = (HtmlSection) elementIterator.next();
    HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
    assertNotNull(h2);
    assertEquals("Links", h2.asText().trim());
    HtmlAnchor a = (HtmlAnchor) elementIterator.next();
    assertEquals("Links", a.getAttribute("name"));
    HtmlParagraph p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    // Expected log: [APT Parser] Ambiguous link: 'cdc.html'. If this is a local link, prepend "./"!
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Anchor", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("cdc.html", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#Anchor", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#Anchor", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Anchor_with_space", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#Anchor_with_space", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("http://maven.apache.org/", a.getAttribute("href"));
    assertEquals("externalLink", a.getAttribute("class"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("http://maven.apache.org/", a.getAttribute("href"));
    assertEquals("externalLink", a.getAttribute("class"));
    // Expected log: [APT Parser] Ambiguous link: 'cdc.html'. If this is a local link, prepend "./"!
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("./cdc.html", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#cdc.html", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("/index.html", a.getAttribute("href"));
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    h2 = (HtmlHeading2) elementIterator.next();
    assertNotNull(h2);
    // Note: htmlunit strips the white space, actual result is ok
    assertEquals("Section formatting: italic bold mono", h2.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Section_formatting:_italic_bold_mono", a.getAttribute("name"));
    HtmlItalic italic = (HtmlItalic) elementIterator.next();
    assertEquals("i", italic.getTagName());
    assertEquals("italic", italic.asText().trim());
    HtmlBold bold = (HtmlBold) elementIterator.next();
    assertEquals("b", bold.getTagName());
    assertEquals("bold", bold.asText().trim());
    HtmlCode code = (HtmlCode) elementIterator.next();
    assertEquals("code", code.getTagName());
    assertEquals("mono", code.asText().trim());
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    HtmlHeading3 h3 = (HtmlHeading3) elementIterator.next();
    assertNotNull(h3);
    // Note: htmlunit strips the white space, actual result is ok
    assertEquals("SubSection formatting: italic bold mono", h3.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("SubSection_formatting:_italic_bold_mono", a.getAttribute("name"));
    italic = (HtmlItalic) elementIterator.next();
    assertEquals("i", italic.getTagName());
    assertEquals("italic", italic.asText().trim());
    bold = (HtmlBold) elementIterator.next();
    assertEquals("b", bold.getTagName());
    assertEquals("bold", bold.asText().trim());
    code = (HtmlCode) elementIterator.next();
    assertEquals("code", code.getTagName());
    assertEquals("mono", code.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    italic = (HtmlItalic) elementIterator.next();
    assertEquals("i", italic.getTagName());
    assertEquals("italic", italic.asText().trim());
    bold = (HtmlBold) elementIterator.next();
    assertEquals("b", bold.getTagName());
    assertEquals("bold", bold.asText().trim());
    code = (HtmlCode) elementIterator.next();
    assertEquals("code", code.getTagName());
    assertEquals("mono", code.asText().trim());
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    h2 = (HtmlHeading2) elementIterator.next();
    assertNotNull(h2);
    assertEquals("No Default Anchor in Section Title with Explicit Anchor", h2.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("No_Default_Anchor_in_Section_Title_with_Explicit_Anchor", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
}
Also used : HtmlCode(com.gargoylesoftware.htmlunit.html.HtmlCode) HtmlAnchor(com.gargoylesoftware.htmlunit.html.HtmlAnchor) HtmlHeading3(com.gargoylesoftware.htmlunit.html.HtmlHeading3) HtmlPage(com.gargoylesoftware.htmlunit.html.HtmlPage) HtmlHeading2(com.gargoylesoftware.htmlunit.html.HtmlHeading2) HtmlParagraph(com.gargoylesoftware.htmlunit.html.HtmlParagraph) HtmlElement(com.gargoylesoftware.htmlunit.html.HtmlElement) HtmlItalic(com.gargoylesoftware.htmlunit.html.HtmlItalic) HtmlSection(com.gargoylesoftware.htmlunit.html.HtmlSection) HtmlBold(com.gargoylesoftware.htmlunit.html.HtmlBold) HtmlDivision(com.gargoylesoftware.htmlunit.html.HtmlDivision)

Example 2 with HtmlParagraph

use of com.gargoylesoftware.htmlunit.html.HtmlParagraph in project maven-doxia-sitetools by apache.

the class AttributesVerifier method verify.

/**
 * {@inheritDoc}
 */
public void verify(String file) throws Exception {
    HtmlPage page = htmlPage(file);
    assertNotNull(page);
    HtmlElement element = page.getHtmlElementById("contentBox");
    assertNotNull(element);
    HtmlDivision division = (HtmlDivision) element;
    assertNotNull(division);
    Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
    // ----------------------------------------------------------------------
    // 
    // ----------------------------------------------------------------------
    HtmlSection section = (HtmlSection) elementIterator.next();
    HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
    assertNotNull(h2);
    assertEquals("section", h2.asText().trim());
    HtmlAnchor a = (HtmlAnchor) elementIterator.next();
    assertNotNull(a);
    assertEquals("section", a.getAttribute("name"));
    HtmlParagraph p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("ID", p.getAttribute("id"));
    assertEquals("CLASS", p.getAttribute("class"));
    assertEquals("TITLE", p.getAttribute("title"));
    assertEquals("STYLE", p.getAttribute("style"));
    assertEquals("LANG", p.getAttribute("lang"));
    HtmlImage img = (HtmlImage) elementIterator.next();
    assertNotNull(img);
    assertEquals("project.png", img.getAttribute("src"));
    assertEquals("150", img.getAttribute("width"));
    assertEquals("93", img.getAttribute("height"));
    assertEquals("border: 1px solid silver", img.getAttribute("style"));
    assertEquals("Project", img.getAttribute("alt"));
    // test object identity to distinguish the case ATTRIBUTE_VALUE_EMPTY
    assertSame(img.getAttribute("dummy"), HtmlElement.ATTRIBUTE_NOT_DEFINED);
    HtmlTable table = (HtmlTable) elementIterator.next();
    assertEquals("1", table.getAttribute("border"));
    assertEquals("none", table.getAttribute("class"));
    element = elementIterator.next();
    // this is a htmlunit bug
    assertEquals("tbody", element.getTagName());
    HtmlTableRow tr = (HtmlTableRow) elementIterator.next();
    HtmlTableHeaderCell th = (HtmlTableHeaderCell) elementIterator.next();
    th = (HtmlTableHeaderCell) elementIterator.next();
    assertEquals("center", th.getAttribute("align"));
    assertEquals("2", th.getAttribute("colspan"));
    assertEquals("50%", th.getAttribute("width"));
    tr = (HtmlTableRow) elementIterator.next();
    th = (HtmlTableHeaderCell) elementIterator.next();
    assertEquals("2", th.getAttribute("rowspan"));
    assertEquals("middle", th.getAttribute("valign"));
    HtmlTableDataCell td = (HtmlTableDataCell) elementIterator.next();
    td = (HtmlTableDataCell) elementIterator.next();
    tr = (HtmlTableRow) elementIterator.next();
    td = (HtmlTableDataCell) elementIterator.next();
    td = (HtmlTableDataCell) elementIterator.next();
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    HtmlUnderlined u = (HtmlUnderlined) elementIterator.next();
    assertEquals("u", u.getTagName());
    HtmlS s = (HtmlS) elementIterator.next();
    assertEquals("s", s.getTagName());
    HtmlSubscript sub = (HtmlSubscript) elementIterator.next();
    assertEquals("sub", sub.getTagName());
    HtmlSuperscript sup = (HtmlSuperscript) elementIterator.next();
    assertEquals("sup", sup.getTagName());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    HtmlBold b = (HtmlBold) elementIterator.next();
    assertEquals("b", b.getTagName());
    HtmlItalic i = (HtmlItalic) elementIterator.next();
    assertEquals("i", i.getTagName());
    i = (HtmlItalic) elementIterator.next();
    assertEquals("i", i.getTagName());
    b = (HtmlBold) elementIterator.next();
    assertEquals("b", b.getTagName());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("color: red; margin-left: 20px", p.getAttribute("style"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Anchor", a.getAttribute("name"));
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#Anchor", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("#Anchor", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("http://maven.apache.org/", a.getAttribute("href"));
    assertEquals("externalLink", a.getAttribute("class"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("./cdc.html", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("cdc.html", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("cdc.pdf", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("./cdc.txt", a.getAttribute("href"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("/index.html", a.getAttribute("href"));
    HtmlDivision div = (HtmlDivision) elementIterator.next();
    assertEquals("source", div.getAttribute("class"));
    HtmlPreformattedText pre = (HtmlPreformattedText) elementIterator.next();
    assertEquals("pretty", pre.getAttribute("class"));
    div = (HtmlDivision) elementIterator.next();
    assertEquals("source", div.getAttribute("class"));
    assertEquals("", div.getAttribute("id"));
    pre = (HtmlPreformattedText) elementIterator.next();
    assertEquals("pretty", pre.getAttribute("id"));
    section = (HtmlSection) elementIterator.next();
    h2 = (HtmlHeading2) elementIterator.next();
    assertEquals("Section without id", h2.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Section_without_id", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    HtmlHeading3 h3 = (HtmlHeading3) elementIterator.next();
    assertEquals("Subsection without id", h3.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Subsection_without_id", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("section-id", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    h2 = (HtmlHeading2) elementIterator.next();
    assertEquals("Section with id", h2.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Section_with_id", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("subsection-id", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    h3 = (HtmlHeading3) elementIterator.next();
    assertEquals("Subsection with id", h3.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Subsection_with_id", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("foo", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    assertEquals("bar", section.getAttribute("class"));
    assertEquals("foo", section.getAttribute("id"));
    h2 = (HtmlHeading2) elementIterator.next();
    assertEquals("Section name", h2.asText().trim());
    assertEquals("", h2.getAttribute("class"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Section_name", a.getAttribute("name"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("subfoo", a.getAttribute("name"));
    section = (HtmlSection) elementIterator.next();
    assertEquals("subbar", section.getAttribute("class"));
    assertEquals("subfoo", section.getAttribute("id"));
    h3 = (HtmlHeading3) elementIterator.next();
    assertEquals("Subsection name", h3.asText().trim());
    assertEquals("", h3.getAttribute("class"));
    a = (HtmlAnchor) elementIterator.next();
    assertEquals("Subsection_name", a.getAttribute("name"));
    assertFalse(elementIterator.hasNext());
}
Also used : HtmlImage(com.gargoylesoftware.htmlunit.html.HtmlImage) HtmlTableRow(com.gargoylesoftware.htmlunit.html.HtmlTableRow) HtmlSuperscript(com.gargoylesoftware.htmlunit.html.HtmlSuperscript) HtmlHeading3(com.gargoylesoftware.htmlunit.html.HtmlHeading3) HtmlTable(com.gargoylesoftware.htmlunit.html.HtmlTable) HtmlS(com.gargoylesoftware.htmlunit.html.HtmlS) HtmlPage(com.gargoylesoftware.htmlunit.html.HtmlPage) HtmlHeading2(com.gargoylesoftware.htmlunit.html.HtmlHeading2) HtmlElement(com.gargoylesoftware.htmlunit.html.HtmlElement) HtmlTableDataCell(com.gargoylesoftware.htmlunit.html.HtmlTableDataCell) HtmlBold(com.gargoylesoftware.htmlunit.html.HtmlBold) HtmlDivision(com.gargoylesoftware.htmlunit.html.HtmlDivision) HtmlAnchor(com.gargoylesoftware.htmlunit.html.HtmlAnchor) HtmlParagraph(com.gargoylesoftware.htmlunit.html.HtmlParagraph) HtmlSubscript(com.gargoylesoftware.htmlunit.html.HtmlSubscript) HtmlItalic(com.gargoylesoftware.htmlunit.html.HtmlItalic) HtmlSection(com.gargoylesoftware.htmlunit.html.HtmlSection) HtmlTableHeaderCell(com.gargoylesoftware.htmlunit.html.HtmlTableHeaderCell) HtmlUnderlined(com.gargoylesoftware.htmlunit.html.HtmlUnderlined) HtmlPreformattedText(com.gargoylesoftware.htmlunit.html.HtmlPreformattedText)

Example 3 with HtmlParagraph

use of com.gargoylesoftware.htmlunit.html.HtmlParagraph in project maven-doxia-sitetools by apache.

the class JavascriptVerifier method verify.

/**
 * Verifies a HtmlPage.
 *
 * @param file the file to verify.
 *
 * @throws Exception if something goes wrong.
 */
public void verify(String file) throws Exception {
    File jsTest = getTestFile("target/output/javascript.html");
    assertNotNull(jsTest);
    assertTrue(jsTest.exists());
    // HtmlUnit
    try (WebClient webClient = new WebClient()) {
        webClient.getOptions().setCssEnabled(false);
        final List<String> collectedAlerts = new ArrayList<String>(4);
        webClient.setAlertHandler(new CollectingAlertHandler(collectedAlerts));
        HtmlPage page = (HtmlPage) webClient.getPage(jsTest.toURI().toURL());
        assertNotNull(page);
        HtmlElement element = page.getHtmlElementById("contentBox");
        assertNotNull(element);
        HtmlDivision division = (HtmlDivision) element;
        assertNotNull(division);
        Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
        // ----------------------------------------------------------------------
        // 
        // ----------------------------------------------------------------------
        HtmlSection section = (HtmlSection) elementIterator.next();
        assertNotNull(section);
        HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
        assertNotNull(h2);
        assertEquals("Test", h2.asText().trim());
        HtmlAnchor a = (HtmlAnchor) elementIterator.next();
        assertNotNull(a);
        assertEquals("Test", a.getAttribute("name"));
        HtmlParagraph p = (HtmlParagraph) elementIterator.next();
        assertNotNull(p);
        assertEquals("You should see a JavaScript alert...", p.asText().trim());
        HtmlScript script = (HtmlScript) elementIterator.next();
        assertNotNull(script);
        assertEquals("text/javascript", script.getAttribute("type"));
        assertEquals("", script.asText().trim());
        List<String> expectedAlerts = Collections.singletonList("Hello!");
        assertEquals(expectedAlerts, collectedAlerts);
    }
}
Also used : HtmlScript(com.gargoylesoftware.htmlunit.html.HtmlScript) HtmlPage(com.gargoylesoftware.htmlunit.html.HtmlPage) HtmlHeading2(com.gargoylesoftware.htmlunit.html.HtmlHeading2) HtmlElement(com.gargoylesoftware.htmlunit.html.HtmlElement) ArrayList(java.util.ArrayList) HtmlDivision(com.gargoylesoftware.htmlunit.html.HtmlDivision) CollectingAlertHandler(com.gargoylesoftware.htmlunit.CollectingAlertHandler) WebClient(com.gargoylesoftware.htmlunit.WebClient) HtmlAnchor(com.gargoylesoftware.htmlunit.html.HtmlAnchor) HtmlParagraph(com.gargoylesoftware.htmlunit.html.HtmlParagraph) HtmlSection(com.gargoylesoftware.htmlunit.html.HtmlSection) PlexusExtension.getTestFile(org.codehaus.plexus.testing.PlexusExtension.getTestFile) File(java.io.File)

Example 4 with HtmlParagraph

use of com.gargoylesoftware.htmlunit.html.HtmlParagraph in project maven-doxia-sitetools by apache.

the class NestedItemsVerifier method verify.

/**
 * {@inheritDoc}
 */
public void verify(String file) throws Exception {
    HtmlPage page = htmlPage(file);
    assertNotNull(page);
    HtmlElement element = page.getHtmlElementById("contentBox");
    assertNotNull(element);
    HtmlDivision division = (HtmlDivision) element;
    assertNotNull(division);
    Iterator<HtmlElement> elementIterator = division.getHtmlElementDescendants().iterator();
    // ----------------------------------------------------------------------
    // Verify link
    // ----------------------------------------------------------------------
    HtmlSection section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    HtmlHeading2 h2 = (HtmlHeading2) elementIterator.next();
    assertNotNull(h2);
    assertEquals("List Section", h2.asText().trim());
    HtmlAnchor a = (HtmlAnchor) elementIterator.next();
    assertNotNull(a);
    assertEquals("List_Section", a.getAttribute("name"));
    // ----------------------------------------------------------------------
    // Unordered lists
    // ----------------------------------------------------------------------
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    HtmlHeading4 h4 = (HtmlHeading4) elementIterator.next();
    assertNotNull(h4);
    assertEquals("Unordered lists", h4.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertNotNull(a);
    assertEquals("Unordered_lists", a.getAttribute("name"));
    HtmlParagraph p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Below is an unordered list, followed by six paragraphs.", p.asText().trim());
    HtmlUnorderedList ul = (HtmlUnorderedList) elementIterator.next();
    assertNotNull(ul);
    HtmlListItem li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 1.", li.getFirstChild().asText().trim());
    ul = (HtmlUnorderedList) elementIterator.next();
    assertNotNull(ul);
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Item 11.", p.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Item 12.", p.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 13.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 14.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 2.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 3.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 4.", li.getFirstChild().asText().trim());
    ul = (HtmlUnorderedList) elementIterator.next();
    assertNotNull(ul);
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 41.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 42.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 43.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 44.", li.getFirstChild().asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 1 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 2 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 3 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 4 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 5 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 6 below list.", p.asText().trim());
    // ----------------------------------------------------------------------
    // Ordered lists
    // ----------------------------------------------------------------------
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    h4 = (HtmlHeading4) elementIterator.next();
    assertNotNull(h4);
    assertEquals("Ordered lists", h4.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertNotNull(a);
    assertEquals("Ordered_lists", a.getAttribute("name"));
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Below is an ordered list, followed by six paragraphs.", p.asText().trim());
    HtmlOrderedList ol = (HtmlOrderedList) elementIterator.next();
    assertNotNull(ol);
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 1.", li.getFirstChild().asText().trim());
    ol = (HtmlOrderedList) elementIterator.next();
    assertNotNull(ol);
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 11.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 12.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 13.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 14.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 2.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 3.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 4.", li.getFirstChild().asText().trim());
    ol = (HtmlOrderedList) elementIterator.next();
    assertNotNull(ol);
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 41.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 42.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 43.", li.getFirstChild().asText().trim());
    li = (HtmlListItem) elementIterator.next();
    assertNotNull(li);
    assertEquals("Item 44.", li.getFirstChild().asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 1 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 2 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 3 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 4 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 5 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 6 below list.", p.asText().trim());
    // ----------------------------------------------------------------------
    // Definition lists
    // ----------------------------------------------------------------------
    section = (HtmlSection) elementIterator.next();
    assertNotNull(section);
    h4 = (HtmlHeading4) elementIterator.next();
    assertNotNull(h4);
    assertEquals("Definition lists", h4.asText().trim());
    a = (HtmlAnchor) elementIterator.next();
    assertNotNull(a);
    assertEquals("Definition_lists", a.getAttribute("name"));
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Below is a definition list, followed by six paragraphs.", p.asText().trim());
    HtmlDefinitionList dl = (HtmlDefinitionList) elementIterator.next();
    assertNotNull(dl);
    HtmlDefinitionTerm dt = (HtmlDefinitionTerm) elementIterator.next();
    assertNotNull(dt);
    assertEquals("Term 1.", dt.getFirstChild().asText().trim());
    HtmlDefinitionDescription dd = (HtmlDefinitionDescription) elementIterator.next();
    assertNotNull(dd);
    assertEquals("Description 1.", dd.getFirstChild().asText().trim());
    dt = (HtmlDefinitionTerm) elementIterator.next();
    assertNotNull(dt);
    assertEquals("Term 2.", dt.getFirstChild().asText().trim());
    dd = (HtmlDefinitionDescription) elementIterator.next();
    assertNotNull(dd);
    assertEquals("Description 2.", dd.getFirstChild().asText().trim());
    dl = (HtmlDefinitionList) elementIterator.next();
    assertNotNull(dl);
    dt = (HtmlDefinitionTerm) elementIterator.next();
    assertNotNull(dt);
    assertEquals("Term 21.", dt.getFirstChild().asText().trim());
    dd = (HtmlDefinitionDescription) elementIterator.next();
    assertNotNull(dd);
    assertEquals("Description 21.", dd.getFirstChild().asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 1 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 2 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 3 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 4 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 5 below list.", p.asText().trim());
    p = (HtmlParagraph) elementIterator.next();
    assertNotNull(p);
    assertEquals("Paragraph 6 below list.", p.asText().trim());
    assertFalse(elementIterator.hasNext());
}
Also used : HtmlUnorderedList(com.gargoylesoftware.htmlunit.html.HtmlUnorderedList) HtmlHeading4(com.gargoylesoftware.htmlunit.html.HtmlHeading4) HtmlPage(com.gargoylesoftware.htmlunit.html.HtmlPage) HtmlHeading2(com.gargoylesoftware.htmlunit.html.HtmlHeading2) HtmlElement(com.gargoylesoftware.htmlunit.html.HtmlElement) HtmlDivision(com.gargoylesoftware.htmlunit.html.HtmlDivision) HtmlOrderedList(com.gargoylesoftware.htmlunit.html.HtmlOrderedList) HtmlAnchor(com.gargoylesoftware.htmlunit.html.HtmlAnchor) HtmlDefinitionList(com.gargoylesoftware.htmlunit.html.HtmlDefinitionList) HtmlParagraph(com.gargoylesoftware.htmlunit.html.HtmlParagraph) HtmlSection(com.gargoylesoftware.htmlunit.html.HtmlSection) HtmlDefinitionTerm(com.gargoylesoftware.htmlunit.html.HtmlDefinitionTerm) HtmlListItem(com.gargoylesoftware.htmlunit.html.HtmlListItem) HtmlDefinitionDescription(com.gargoylesoftware.htmlunit.html.HtmlDefinitionDescription)

Example 5 with HtmlParagraph

use of com.gargoylesoftware.htmlunit.html.HtmlParagraph in project faces by jakartaee.

the class Spec1IT method testSimpleInvalidFields.

/**
 * @see com.sun.faces.ext.component.UIValidateWholeBean
 * @see https://github.com/jakartaee/faces/issues/1
 */
@Test
public void testSimpleInvalidFields() throws Exception {
    HtmlPage page = webClient.getPage(webUrl);
    HtmlTextInput password1 = page.getHtmlElementById("password1");
    password1.setValueAttribute("foo");
    HtmlTextInput password2 = page.getHtmlElementById("password2");
    password2.setValueAttribute("bar");
    HtmlSubmitInput button = page.getHtmlElementById("submit");
    page = button.click();
    String pageText = page.asXml();
    assertTrue(pageText.contains("[foo]"));
    assertTrue(pageText.contains("[bar]"));
    assertTrue(!pageText.contains("Password fields must match"));
    HtmlParagraph password1Value = page.getHtmlElementById("password1Value");
    assertTrue(password1Value.asNormalizedText().isEmpty());
    HtmlParagraph password2Value = page.getHtmlElementById("password2Value");
    assertTrue(password2Value.asNormalizedText().isEmpty());
}
Also used : HtmlTextInput(com.gargoylesoftware.htmlunit.html.HtmlTextInput) HtmlPage(com.gargoylesoftware.htmlunit.html.HtmlPage) HtmlSubmitInput(com.gargoylesoftware.htmlunit.html.HtmlSubmitInput) HtmlParagraph(com.gargoylesoftware.htmlunit.html.HtmlParagraph) Test(org.junit.Test)

Aggregations

HtmlPage (com.gargoylesoftware.htmlunit.html.HtmlPage)11 HtmlParagraph (com.gargoylesoftware.htmlunit.html.HtmlParagraph)11 HtmlAnchor (com.gargoylesoftware.htmlunit.html.HtmlAnchor)7 HtmlDivision (com.gargoylesoftware.htmlunit.html.HtmlDivision)7 HtmlElement (com.gargoylesoftware.htmlunit.html.HtmlElement)7 HtmlHeading2 (com.gargoylesoftware.htmlunit.html.HtmlHeading2)7 HtmlSection (com.gargoylesoftware.htmlunit.html.HtmlSection)7 HtmlSubmitInput (com.gargoylesoftware.htmlunit.html.HtmlSubmitInput)4 HtmlTextInput (com.gargoylesoftware.htmlunit.html.HtmlTextInput)4 Test (org.junit.Test)4 HtmlHeading3 (com.gargoylesoftware.htmlunit.html.HtmlHeading3)3 HtmlListItem (com.gargoylesoftware.htmlunit.html.HtmlListItem)3 HtmlPreformattedText (com.gargoylesoftware.htmlunit.html.HtmlPreformattedText)3 HtmlBold (com.gargoylesoftware.htmlunit.html.HtmlBold)2 HtmlDefinitionDescription (com.gargoylesoftware.htmlunit.html.HtmlDefinitionDescription)2 HtmlDefinitionList (com.gargoylesoftware.htmlunit.html.HtmlDefinitionList)2 HtmlDefinitionTerm (com.gargoylesoftware.htmlunit.html.HtmlDefinitionTerm)2 HtmlHeading4 (com.gargoylesoftware.htmlunit.html.HtmlHeading4)2 HtmlItalic (com.gargoylesoftware.htmlunit.html.HtmlItalic)2 HtmlOrderedList (com.gargoylesoftware.htmlunit.html.HtmlOrderedList)2