blob: 2a04d732164cd6ed13b59eb59303d5cad87d4796 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../resources/js-test.js"></script>
</head>
<body id="body">
<div id="content1" role="group">
<iframe onload="runTest(1)" id="iframe1" role='presentation' src="data:text/html,<body><button>Click me</button></body>"></iframe>
</div>
<div id="content2" role="group">
<iframe onload="runTest(2)" id="iframe2" src="data:text/html,<body><button>Click me</button></body>"></iframe>
</div>
<div id="content3" role="group">
<object type="text/html" onload="runTest(3)" role="none" id="object1" data="data:text/html,<body><div role='group'><button>Click me</button></div></body>"></object>
</div>
<p id="description"></p>
<div id="console"></div>
<script>
description("This tests that setting role=presentation on an iframe/object hides the AXWebArea.");
jsTestIsAsync = true;
var test1Ran = false;
var test2Ran = false;
var test3Ran = false;
var test1Log;
var test2Log;
var test3Log;
// Run the test for a iframe that has presentation role and one that does not.
// The children should be different.
function runTest(testNumber)
{
if (window.accessibilityController) {
var content = accessibilityController.accessibleElementById("content" + testNumber);
if (testNumber == 1) {
test1Ran = true;
test1Log = testLog(content, testNumber);
} else if (testNumber == 2) {
test2Ran = true;
test2Log = testLog(content, testNumber);
} else if (testNumber == 3) {
test3Ran = true;
test3Log = testLog(content, testNumber);
}
if (test3Ran && test2Ran && test1Ran) {
debug(test1Log);
debug(test2Log);
debug(test3Log);
finishJSTest();
}
}
}
function testLog(content, testNumber) {
var result = testNumber + ". Content child: " + content.childAtIndex(0).role;
result += "\n" + testNumber + ". Content grand child: " + content.childAtIndex(0).childAtIndex(0).role;
return result;
}
</script>
</body>
</html>