<!DOCTYPE HTML><!-- webkit-test-runner [ ModernMediaControlsEnabled=false ] -->
<html>
<head>
<script src="../resources/js-test-pre.js"></script>
<script src="../resources/accessibility-helper.js"></script>
</head>
<body>

<div id="text1">
a <video width=100 height=100 controls></video> b
</div>

<br>

<div id="text2">
a <audio width=100 height=100 controls></audio> b
</div>

</div>

<div id="stopElement">End of test</div>

<pre id="tree"></pre>

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

<script>
description("This tests ensures that if video or audio tags are used, they will emit an object replacement character in a range for string operation.")

if (window.accessibilityController) {
    // Build the accessibility tree up until 'End of test' is encountered.
    window.stopElement = accessibilityController.accessibleElementById("stopElement");

    document.body.focus();
    dumpAccessibilityTree(accessibilityController.focusedElement, stopElement, 0);
}
</script>
<script src="../resources/js-test-post.js"></script>
</body>
</html>
