gecko/accessible/tests/mochitest/states/test_docarticle.html

122 lines
3.5 KiB
HTML
Raw Normal View History

<html>
<head>
<title>states of document article</title>
<link rel="stylesheet" type="text/css"
href="chrome://mochikit/content/tests/SimpleTest/test.css" />
<script type="application/javascript"
src="chrome://mochikit/content/MochiKit/packed.js"></script>
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<script type="application/javascript"
src="../common.js"></script>
<script type="application/javascript"
src="../states.js"></script>
<script type="application/javascript"
src="../events.js"></script>
<script type="application/javascript">
function designModeOn()
{
this.eventSeq = [
new invokerChecker(EVENT_REORDER, document)
];
this.invoke = function designModeOn_invoke()
{
document.designMode = "on";
}
this.finalCheck = function designModeOn_finalCheck()
{
testStates(document, 0, EXT_STATE_EDITABLE);
testStates("aria_article", 0, EXT_STATE_EDITABLE);
testStates("editable_aria_article", 0, EXT_STATE_EDITABLE);
testStates("article", 0, EXT_STATE_EDITABLE);
testStates("editable_article", 0, EXT_STATE_EDITABLE);
}
this.getID = function designModeOn_getID()
{
return "design mode on";
}
}
function designModeOff()
{
this.eventSeq = [
new invokerChecker(EVENT_REORDER, document)
];
this.invoke = function designModeOn_invoke()
{
document.designMode = "off";
}
this.finalCheck = function designModeOn_finalCheck()
{
testStates(document, STATE_READONLY);
testStates("aria_article", STATE_READONLY);
testStates("editable_aria_article", 0, EXT_STATE_EDITABLE);
testStates("article", STATE_READONLY);
testStates("editable_article", 0, EXT_STATE_EDITABLE);
}
this.getID = function designModeOn_getID()
{
return "design mode off";
}
}
var gQueue = null;
function doTest()
{
testStates(document, STATE_READONLY);
testStates("aria_article", STATE_READONLY);
testStates("editable_aria_article", 0, EXT_STATE_EDITABLE);
testStates("article", STATE_READONLY);
testStates("editable_article", 0, EXT_STATE_EDITABLE);
// Design mode on/off trigger document accessible subtree recreation.
gQueue = new eventQueue();
gQueue.push(new designModeOn());
gQueue.push(new designModeOff());
gQueue.invoke(); // Will call SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
addA11yLoadEvent(doTest);
</script>
</head>
<body role="article">
<a target="_blank"
href="https://bugzilla.mozilla.org/show_bug.cgi?id=467387"
title="Expose non-editable documents as readonly, regardless of role">
Mozilla Bug 467387
</a><br/>
<a target="_blank"
href="https://bugzilla.mozilla.org/show_bug.cgi?id=613502"
title="Map <article> like we do aria role article">
Mozilla Bug 613502
</a>
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test">
</pre>
<div id="aria_article" role="article">aria article</div>
<div id="editable_aria_article" role="article" contentEditable="true">
editable aria article</div>
<article id="article">article</article>
<article id="editable_article" contentEditable="true">
editable article</article>
</body>
</html>