--- /dev/null
+<html>\r
+<head>\r
+ <title>Dijit wai unit test</title>\r
+ <script type="text/javascript" src="../../../dojo/dojo.js"\r
+ djConfig="isDebug: true"></script>\r
+ <script type="text/javascript">\r
+ dojo.require("doh.runner");\r
+ dojo.require("dijit.dijit");\r
+\r
+ dojo.addOnLoad(function(){\r
+ doh.register("dijit.tests._base.wai",\r
+ [\r
+ function getWaiRoleOnElementWithNoRole(){\r
+ var elem = dojo.byId("no-role-or-states");\r
+ doh.assertFalse(dijit.hasWaiRole(elem));\r
+ doh.assertEqual("", dijit.getWaiRole(elem));\r
+ },\r
+\r
+ function getEmptyWairoleRole(){\r
+ var elem = dojo.byId("empty-wairole");\r
+ doh.assertTrue(dijit.hasWaiRole(elem));\r
+ doh.assertEqual("", dijit.getWaiRole(elem));\r
+ },\r
+\r
+ function getWairoleRole(){\r
+ var elem = dojo.byId("wairole");\r
+ doh.assertTrue(dijit.hasWaiRole(elem));\r
+ doh.assertEqual("menuitem", dijit.getWaiRole(elem));\r
+ },\r
+\r
+ function getUnprefixedRole(){\r
+ var elem = dojo.byId("unprefixed-role");\r
+ doh.assertTrue(dijit.hasWaiRole(elem));\r
+ doh.assertEqual("menuitem", dijit.getWaiRole(elem));\r
+ },\r
+\r
+ function setWaiRole(){\r
+ var div = document.createElement("div");\r
+ dijit.setWaiRole(div, "menuitem");\r
+ if(dojo.isFF && dojo.isFF < 3){\r
+ doh.assertEqual("wairole:menuitem",\r
+ div.getAttribute("role"));\r
+ }else{\r
+ doh.assertEqual("menuitem",\r
+ div.getAttribute("role"));\r
+ }\r
+ },\r
+\r
+ function removeWaiRole(){\r
+ var div = document.createElement("div");\r
+ dijit.setWaiRole(div, "menuitem");\r
+ dijit.removeWaiRole(div);\r
+ if(div.hasAttribute){\r
+ doh.assertFalse(div.hasAttribute("role"));\r
+ }else{\r
+ doh.assertTrue(div.getAttribute("role") == null\r
+ || div.getAttribute("role") == "");\r
+ }\r
+ },\r
+\r
+ function getWaiStateOnElementWithNoState(){\r
+ var elem = dojo.byId("no-role-or-states");\r
+ doh.assertFalse(dijit.hasWaiState(elem, "checked"));\r
+ doh.assertEqual("", dijit.getWaiState(elem, "checked"));\r
+ },\r
+\r
+ function getWaiState(){\r
+ if(dojo.isFF && dojo.isFF < 3){\r
+ var div = document.createElement("div");\r
+ div.setAttributeNS("http://www.w3.org/2005/07/aaa",\r
+ "aaa:checked", "true");\r
+ doh.assertTrue(dijit.hasWaiState(div, "checked"));\r
+ doh.assertEqual("true",\r
+ dijit.getWaiState(div, "checked"));\r
+ }else{\r
+ var elem = dojo.byId("checked");\r
+ doh.assertTrue(dijit.hasWaiState(elem, "checked"));\r
+ doh.assertEqual("true",\r
+ dijit.getWaiState(elem, "checked"));\r
+ }\r
+ },\r
+\r
+ function setWaiState(){\r
+ var div = document.createElement("div");\r
+ dijit.setWaiState(div, "checked", "true");\r
+ if(dojo.isFF && dojo.isFF < 3){\r
+ doh.assertEqual("true",\r
+ div.getAttributeNS("http://www.w3.org/2005/07/aaa",\r
+ "checked"));\r
+ }else{\r
+ doh.assertEqual("true",\r
+ div.getAttribute("aria-checked"));\r
+ }\r
+ },\r
+\r
+ function removeWaiState(){\r
+ var div = document.createElement("div");\r
+ dijit.setWaiState(div, "checked", "true");\r
+ dijit.removeWaiState(div, "checked");\r
+ doh.assertEqual("", dijit.getWaiState(div, "checked"));\r
+ }\r
+ ]\r
+ );\r
+ doh.run();\r
+ });\r
+ </script>\r
+</head>\r
+<body>\r
+ <div id="no-role-or-states"></div>\r
+ <div id="empty-wairole" role="wairole:"></div>\r
+ <div id="wairole" role="wairole:menuitem"></div>\r
+ <div id="unprefixed-role" role="menuitem"></div>\r
+ <div id="checked" aria-checked="true"></div>\r
+</body>\r
+</html>\r