Mozilla/mozilla/embedding/qa/jstests/accessibility/nsIAccessibleTestCheckBoxCheckedNode.txt
dsirnapalli%netscape.com ac1356834f Library file.Contains methods useful for all the testcases.
git-svn-id: svn://10.0.0.236/trunk@115912 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-06 02:07:40 +00:00

213 lines
7.3 KiB
Plaintext

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<title> nsIAccessible Interface Test Case </title>
<!-- Descrpt: Test nsIAccessible Interface attributes and methods
for HTML Check Box Checked Node
Author: dsirnapalli@netscape.com
Revs: 01.18.02 - Created
Last Run On:02.25.02.
- The contents of this file are subject to the Mozilla Public
- License Version 1.1 (the "License"); you may not use this file
- except in compliance with the License. You may obtain a copy of
- the License at http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
- implied. See the License for the specific language governing
- rights and limitations under the License.
-
- The Original Code is Mozilla Communicator Test Cases.
-
- The Initial Developer of the Original Code is Netscape Communications
- Corp. Portions created by Netscape Communications Corp. are
- Copyright (C) 1999 Netscape Communications Corp. All
- Rights Reserved.
-
- Contributor(s):
-->
<head>
<!-- script below is ngdriverspecific -->
<script type="text/javascript" src="http://bubblegum/ngdriver/suites/testlib.js">
</script>
<script type="text/javascript" src="accesslib.js"></script>
<script type="text/javascript">
function getDomNodeCheckBoxChecked()
{
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var node = document.getElementsByTagName("form").item(1);
arr = new Array(5);
arr = node.elements;
return arr[0];
}
catch(e){
alert("Exception: " + e);
}
}
function executeTestCase()
{
var domNode = getDomNodeCheckBoxChecked();
if(domNode == null)
{
res = res + "Could not get the DOM Node";
submitToCookie();
}
else
{//else1
accNode = getAccessibleNode(domNode);
tempaccNode = accNode;
if(accNode == "Exception")
{
res = res + "The Node you selected is not an Accessible Node";
submitToCookie();
}
else
{
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Here we are telling the accessible node to get focus.We had to call constructResults
// after some time interval because it actually takes some time for the accessible
// node to get focus. Before checking pass fail criteria in constructResults method
// we had to give some time for the node to get focus.
accNode.accTakeFocus();
setTimeout("constructResults();", 2000);
}
catch(e){
alert("Exception**: " + e);
}
}//else2
}
}
function constructResults()
{
try{
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// originally we stored the accNode in tempaccNode.
// Below code is used to check where the focus actually is.
// accNode.accFocused returns an accessible node. on that accessible node when you call
// accGetDOMNode it will return the corresponding dom node. if that dom node and
// tempaccNode's dom node is same, that mean focus is on the node we expected it to be on.
if(tempaccNode.accGetDOMNode() == accNode.accFocused.accGetDOMNode())
{
varaccFocused = "Focused";
}
else
{
varaccFocused = "Not Focused";
}
var name = getName();
var role = getRole();
var state = getState();
var value = getValue();
var newvalue = value.toString();
var numActions = getNumActions();
if(numActions > 1)
alert("When i last modified the test case numActions was 1. Now numActions is more than 1. Add tests for other numActions");
var actionName = getActionName();
var action = doAction();
var expectedName = null;
var expectedRole = "44";
var expectedState = "1048596";
var expectedValue = "NS_ERROR_NOT_IMPLEMENTED";
var expectednodeFocus = "Focused";
var expectedaccFocused = "Focused";
var expectednumActions = "1";
var expectedactionName = "Uncheck";
var expectednodeCheck = "Check Box Not Checked";
var row0 = new Array("Property/Method", "Expected Values", "Actual Values", "Result");
var row1 = new Array("Name->", expectedName, name);
var row2 = new Array("Role->", expectedRole, role);
var row3 = new Array("State->", expectedState, state);
var row4 = new Array("Value->", expectedValue, value);
var row5 = new Array("accTakeFocus()->", expectednodeFocus, nodeFocus);
var row6 = new Array("accFocused->", expectedaccFocused, varaccFocused);
var row7 = new Array("accNumActions->", expectednumActions, numActions);
var row8 = new Array("getAccActionName()->", expectedactionName, actionName);
var row9 = new Array("accDoAction()->", expectednodeCheck, nodeCheck);
row = new Array(row0, row1, row2, row3, row4, row5, row6, row7, row8, row9);
if (name == expectedName) row1[3] = "PASS"; else row1[3] = "FAIL";
if (role == expectedRole) row2[3] = "PASS"; else row2[3] = "FAIL";
if (state == expectedState) row3[3] = "PASS"; else row3[3] = "FAIL";
if (newvalue.match(expectedValue)) row4[3] = "PASS"; else row4[3] = "FAIL";
if (nodeFocus == expectednodeFocus) row5[3] = "PASS"; else row5[3] = "FAIL";
if (varaccFocused == expectedaccFocused) row6[3] = "PASS"; else row6[3] = "FAIL";
if (numActions == expectednumActions) row7[3] = "PASS"; else row7[3] = "FAIL";
if (actionName == expectedactionName) row8[3] = "PASS"; else row8[3] = "FAIL";
if (nodeCheck == expectednodeCheck) row9[3] = "PASS"; else row9[3] = "FAIL";
appendTableRes();
submitToCookie();
}
catch(e){
alert("Exception**: " + e);
}
}
function nodeUnChecked()
{
nodeCheck = "Check Box Not Checked";
}
</script>
</head>
<body>
<!-- form below is ngdriverspecific -->
<form name="results" action="/ngdriver/cgi-bin/writeresults.cgi" method="post">
<script type="text/javascript">
document.write('<input name="resultsfile" type="hidden" value="' + window.opener.document.resultsform.resultsfile.value + '">');
</script>
<input type="hidden" name="textarea">
</form>
<script type="text/javascript">
nodeFocus = "Not Focused";
nodeCheck = "Check Box Checked";
cookieName = "nsIAccessibleTestCheckBoxCheckedNode";
var res = "<b><u> Results for HTML Check Box Checked Node:</u></b><br><br>";
if(readCookie(cookieName) == null)
{
<!-- Test Form -->
document.write('<br><br><b> Testing Check Box Checked </b><br><br>');
document.write('<form>');
document.write('Is your age: <br>');
document.write('<input type="checkbox" name="sex" checked onClick="nodeUnChecked();" onFocus="nodeFocused();"> Above 30');
document.write('<input type="checkbox" name="sex"> Below 30');
document.write('</form>');
setTimeout("executeTestCase();", 2000);
}
else
{
var cookieValue = readCookie(cookieName);
eraseCookie(cookieName);
displayResults(cookieValue);
}
</script>
</body>
</html>