haikuwebkit/LayoutTests/accessibility/mac/search-predicate-plaintext....

49 lines
1.9 KiB
HTML
Raw Permalink Normal View History

Bug 179068 - AX: search predicate returns containing group for plain text instead of text element https://bugs.webkit.org/show_bug.cgi?id=179068 Reviewed by Darin Adler Implement a check in AccessibilityRenderObject::hasPlainText(), AccessibilityObject::canHavePlainText(), to confirm the element is capable of providing text. Source/WebCore: Tests: accessibility/mac/search-predicate-plaintext.html accessibility/mac/search-predicate-visible-button.html accessibility/mac/search-predicate-visited-links.html * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::text const): (WebCore::AccessibilityNodeObject::stringValue const): * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isARIAStaticText const): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::stringValue const): (WebCore::AccessibilityRenderObject::canHavePlainText const): (WebCore::AccessibilityRenderObject::hasPlainText const): * accessibility/AccessibilityRenderObject.h: LayoutTests: * accessibility/mac/search-predicate-expected.txt: * accessibility/mac/search-predicate-plaintext-expected.txt: Added. * accessibility/mac/search-predicate-plaintext.html: Added. * accessibility/mac/search-predicate-visible-button-expected.txt: Added. * accessibility/mac/search-predicate-visible-button.html: Added. * accessibility/mac/search-predicate-visited-links-expected.txt: Added. * accessibility/mac/search-predicate-visited-links.html: Added. * accessibility/mac/search-predicate.html: * platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/195548@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@224650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-11-09 23:35:34 +00:00
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body id="body">
<blockquote>first blockquote level 1</blockquote>
<blockquote>second blockquote level 1</blockquote>
<p>plain text paragraph</p>
<p style="color:black; font-family:sans-serif; font-weight:bold; text-decoration:underline;">sans-serif black bold text with underline</p>
<p style="color:blue; font-family:serif; font-style:italic;">serif blue italic text</p>
<p id="description"></p>
<div id="console"></div>
<script>
description("This tests the ability to search for accessible elements by key or text.");
if (window.accessibilityController) {
document.getElementById("body").focus();
var containerElement = accessibilityController.focusedElement;
var startElement;
var resultElement;
// Plain text.
startElement = containerElement.childAtIndex(0);
resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXPlainTextSearchKey", "", false);
shouldBe("resultElement.role", "'AXRole: AXStaticText'");
shouldBe("resultElement.stringValue", "'AXValue: first blockquote level 1'");
startElement = resultElement;
resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXPlainTextSearchKey", "", false);
shouldBe("resultElement.role", "'AXRole: AXStaticText'");
shouldBe("resultElement.stringValue", "'AXValue: second blockquote level 1'");
startElement = resultElement;
resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXPlainTextSearchKey", "", false);
shouldBe("resultElement.role", "'AXRole: AXStaticText'");
shouldBe("resultElement.stringValue", "'AXValue: plain text paragraph'");
}
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>