<html>
    <head>
        <script src="../../resources/js-test.js"></script>
    </head>
    <body>
        <img aria-labeledby="desc" alt="alternate text" title="title">
        <img alt="alternate text" title="title">

        <p id="desc" style="visibility: hidden">ARIA labeled-by name</p>

        <p>
            This test verifies that, on Windows, an img tag's alt text is
            returned for the element's 'title' property when the element has no
            ARIA name.
        </p>

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

        <script>
            if (window.accessibilityController) {
                document.body.focus();

                var anonymousBlock = accessibilityController.focusedElement.childAtIndex(0);
                var e = anonymousBlock.childAtIndex(0);
                
                shouldBe('e.title', '"AXTitle: ARIA labeled-by name"');

                e = anonymousBlock.childAtIndex(1);
                shouldBe('e.title', '"AXTitle: alternate text"');
            }
        </script>
    </body>
</html>
