<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
<script>
if (window.testRunner)
   testRunner.dumpAsText();
</script>
</head>
<body>

<div role="text" tabindex=0 id='text1'>
<a href="#name1" id="name1link">Text 1</a>
<a href="#name2" id="name2link">Text 2</a>
<span><b><span>Text 3</span></b></span>
</div>


<p id="description"></p>
<div id="console"></div>

<script>

    description("This tests that if an element uses the 'text' role but does not use an aria-label, it can retrieve the text inside of it.");

    if (window.accessibilityController) {
        document.getElementById("text1").focus();
        var text = accessibilityController.focusedElement;
        shouldBe("text.stringValue", "'AXValue: Text 1 Text 2 Text 3'");
    }

</script>

<script src="../../resources/js-test-post.js"></script>

</body>
</html>

