<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
</head>
<body id="body">

<div id="textbox1" role="textbox" aria-multiline="false"></div>
<div id="textbox2" role="textbox" aria-multiline="true"></div>
<div id="searchbox1" role="searchbox" aria-multiline="false"></div>
<div id="searchbox2" role="searchbox" aria-multiline="true"></div>
<input id="input" />
<input id="password" type="password" />
<textarea id="textarea"></textarea>

<p id="description"></p>
<div id="console"></div>
<script>
    description("Verifies the correct states are exposed for native and ARIA text input fields");
    if (window.accessibilityController) {
        var textbox1 = accessibilityController.accessibleElementById("textbox1");
        shouldBeTrue("textbox1.isSingleLine");
        shouldBeFalse("textbox1.isMultiLine");

        var textbox2 = accessibilityController.accessibleElementById("textbox2");
        shouldBeFalse("textbox2.isSingleLine");
        shouldBeTrue("textbox2.isMultiLine");

        var searchbox1 = accessibilityController.accessibleElementById("searchbox1");
        shouldBeTrue("searchbox1.isSingleLine");
        shouldBeFalse("searchbox1.isMultiLine");

        var searchbox2 = accessibilityController.accessibleElementById("searchbox2");
        shouldBeFalse("searchbox2.isSingleLine");
        shouldBeTrue("searchbox2.isMultiLine");

        var input = accessibilityController.accessibleElementById("input");
        shouldBeTrue("input.isSingleLine");
        shouldBeFalse("input.isMultiLine");

        var password = accessibilityController.accessibleElementById("password");
        shouldBeTrue("password.isSingleLine");
        shouldBeFalse("password.isMultiLine");

        var textarea = accessibilityController.accessibleElementById("textarea");
        shouldBeFalse("textarea.isSingleLine");
        shouldBeTrue("textarea.isMultiLine");
    }

</script>

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