haikuwebkit/LayoutTests/accessibility/mac/search-predicate-visited-li...

47 lines
1.6 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">
<a href="#image">link</a>
<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) {
jsTestIsAsync = true;
window.testRunner.keepWebHistory();
document.getElementById("body").focus();
var containerElement = accessibilityController.focusedElement;
var startElement;
var resultElement;
// Unvisited link.
startElement = accessibilityController.focusedElement.childAtIndex(0);
resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXUnvisitedLinkSearchKey", "", false);
shouldBe("resultElement.boolAttributeValue('AXVisited')", "false");
shouldBe("resultElement.childAtIndex(0).stringValue", "'AXValue: link'");
// Visited link.
accessibilityController.focusedElement.childAtIndex(0).childAtIndex(0).press();
setTimeout(function() {
startElement = accessibilityController.focusedElement.childAtIndex(0);
resultElement = containerElement.uiElementForSearchPredicate(startElement, true, "AXVisitedLinkSearchKey", "", false);
shouldBe("resultElement.boolAttributeValue('AXVisited')", "true");
shouldBe("resultElement.childAtIndex(0).stringValue", "'AXValue: link'");
finishJSTest();
}, 50);
}
</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>