diff options
-rw-r--r-- | tests/unit/selectmenu/selectmenu.html | 8 | ||||
-rw-r--r-- | tests/unit/selectmenu/selectmenu_core.js | 38 |
2 files changed, 42 insertions, 4 deletions
diff --git a/tests/unit/selectmenu/selectmenu.html b/tests/unit/selectmenu/selectmenu.html index 836f911fc..761b916ee 100644 --- a/tests/unit/selectmenu/selectmenu.html +++ b/tests/unit/selectmenu/selectmenu.html @@ -4,12 +4,12 @@ <meta charset="utf-8"> <title>jQuery UI Selectmenu Test Suite</title> - <link rel="stylesheet" href="../../../themes/base/jquery.ui.spinner.css"> + <link rel="stylesheet" href="../../../themes/base/jquery.ui.core.css"> + <link rel="stylesheet" href="../../../themes/base/jquery.ui.button.css"> + <link rel="stylesheet" href="../../../themes/base/jquery.ui.menu.css"> + <link rel="stylesheet" href="../../../themes/base/jquery.ui.selectmenu.css"> <script src="../../jquery.js"></script> - <script src="../../../external/jquery.mousewheel-3.0.4.js"></script> - <script src="../../../external/globalize.js"></script> - <script src="../../../external/globalize.culture.ja-JP.js"></script> <script src="../../../ui/jquery.ui.core.js"></script> <script src="../../../ui/jquery.ui.widget.js"></script> <script src="../../../ui/jquery.ui.button.js"></script> diff --git a/tests/unit/selectmenu/selectmenu_core.js b/tests/unit/selectmenu/selectmenu_core.js index 0d6b8951a..92b29882e 100644 --- a/tests/unit/selectmenu/selectmenu_core.js +++ b/tests/unit/selectmenu/selectmenu_core.js @@ -3,4 +3,42 @@ module( "selectmenu: core" ); +test("markup structure", function () { + expect(5); + var element = $('#speed').selectmenu(); + var widget = element.selectmenu("widget"); + var button = widget.filter(".ui-selectmenu-button"); + var menu = widget.filter(".ui-selectmenu-menu"); + + equals( button.length, 1, "button wrapper found"); + equals( button.children("a").length, 1, "button link found"); + + equals( menu.length, 1, "menu wrapper found"); + equals( menu.children("ul").length, 1, "menu found"); + + equals( menu.find("ul li.ui-menu-item").length, element.find("option").length, "menu li's found"); +}); + +test("accessibility", function () { + var element = $('#speed').selectmenu(); + var widget = element.selectmenu("widget"); + var button = widget.filter(".ui-selectmenu-button"); + var menu = widget.filter(".ui-selectmenu-menu"); + var link = button.children("a"); + var ul = menu.children("ul") + var links = ul.find("li.ui-menu-item a"); + expect(6 + links.length); + + equals( button.attr("aria-disabled"), "false", "button aria-disabled"); + equals( link.attr("aria-disabled"), "false", "button link aria-disabled"); + equals( link.attr("aria-haspopup"), "true", "button link aria-haspopup"); + equals( link.attr("role"), "button", "button link role"); + equals( link.attr("aria-owns"), ul.attr("id"), "button link aria-owns"); + equals( link.attr("tabindex"), 0, "button link tabindex"); + + $.each( links, function(index){ + equals( $(this).attr("role"), "option", "menu link #" + index +" role"); + }); +}); + })( jQuery ); |