| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body id="body"> |
| |
| <p id="start">start text</p> |
| <a id="link" href='#'> |
| <h3>heading text</h3> |
| <div>sub text</div> |
| </a> |
| |
| <p id="start2">start text 2</p> |
| <a id="link2" href='#'> |
| <span>link2</span> |
| <span> text</span> |
| </a> |
| <a href="#">link3</a> |
| |
| <p id="description"></p> |
| <div id="console"></div> |
| |
| <script> |
| description("This tests the ability to search for exposed link children."); |
| |
| if (window.accessibilityController) { |
| window.testRunner.keepWebHistory(); |
| |
| var containerElement = accessibilityController.rootElement; |
| var startElement = accessibilityController.accessibleElementById("start"); |
| var resultElement; |
| |
| resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXLinkSearchKey", "", false); |
| shouldBe("resultElement.description", "'AXLabel: heading text'"); |
| |
| startElement = resultElement; |
| resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXLinkSearchKey", "", false); |
| shouldBe("resultElement.description", "'AXLabel: sub text'"); |
| |
| // Search backwards. |
| startElement = resultElement; |
| resultElement = containerElement.uiElementForSearchPredicate(startElement, false, "AXLinkSearchKey", "", false); |
| shouldBe("resultElement.description", "'AXLabel: heading text'"); |
| |
| // Test the case where the link itself is not ignored. |
| startElement = accessibilityController.accessibleElementById("start2"); |
| resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXLinkSearchKey", "", false); |
| shouldBe("resultElement.description", "'AXLabel: link2 text'"); |
| |
| startElement = resultElement; |
| resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXLinkSearchKey", "", false); |
| shouldBe("resultElement.description", "'AXLabel: link3'"); |
| } |
| |
| </script> |
| |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |