<!DOCTYPE HTML>
<html>
<body>
<script src="../resources/js-test-pre.js"></script>
<script src="../resources/accessibility-helper.js"></script>

<style>canvas { display: inline; border: 1px solid #000; }</style>
    <!-- No whitespace between canvases on purpose, so there's the same
         number of children of the container element on all platforms. -->
    <div id="container" tabIndex=0 aria-label="Container"><canvas id="canvas1" width="100" height="100" aria-label="Canvas label">Fallback text</canvas><canvas id="canvas2" width="100" height="100"><button>Inner button</button></canvas><canvas id="canvas3-skipped" width="100" height="100"></canvas></div>

<div id="console"></div>
<script>
description("This test makes sure that a canvas with and without fallback content each has the right role and description.")

if (window.testRunner && window.accessibilityController) {
    window.testRunner.dumpAsText();

    document.getElementById('container').focus();
    var axContainer = accessibilityController.focusedElement;

    shouldBe("axContainer.childrenCount", "2");

    var axCanvas1 = axContainer.childAtIndex(0);
    shouldBeEqualToString("platformValueForW3CName(axCanvas1)", "Canvas label");
    debug('Canvas 1 role: ' + axCanvas1.role);

    var axCanvas2 = axContainer.childAtIndex(1);
    shouldBeEqualToString("platformValueForW3CName(axCanvas2)", "");
    debug('Canvas 2 role: ' + axCanvas2.role);
}

</script>

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