|
3 | 3 | module( "selectmenu: core" );
|
4 | 4 |
|
5 | 5 |
|
| 6 | +test("markup structure", function () { |
| 7 | + expect(5); |
| 8 | + var element = $('#speed').selectmenu(); |
| 9 | + var widget = element.selectmenu("widget"); |
| 10 | + var button = widget.filter(".ui-selectmenu-button"); |
| 11 | + var menu = widget.filter(".ui-selectmenu-menu"); |
| 12 | + |
| 13 | + equals( button.length, 1, "button wrapper found"); |
| 14 | + equals( button.children("a").length, 1, "button link found"); |
| 15 | + |
| 16 | + equals( menu.length, 1, "menu wrapper found"); |
| 17 | + equals( menu.children("ul").length, 1, "menu found"); |
| 18 | + |
| 19 | + equals( menu.find("ul li.ui-menu-item").length, element.find("option").length, "menu li's found"); |
| 20 | +}); |
| 21 | + |
| 22 | +test("accessibility", function () { |
| 23 | + var element = $('#speed').selectmenu(); |
| 24 | + var widget = element.selectmenu("widget"); |
| 25 | + var button = widget.filter(".ui-selectmenu-button"); |
| 26 | + var menu = widget.filter(".ui-selectmenu-menu"); |
| 27 | + var link = button.children("a"); |
| 28 | + var ul = menu.children("ul") |
| 29 | + var links = ul.find("li.ui-menu-item a"); |
| 30 | + expect(6 + links.length); |
| 31 | + |
| 32 | + equals( button.attr("aria-disabled"), "false", "button aria-disabled"); |
| 33 | + equals( link.attr("aria-disabled"), "false", "button link aria-disabled"); |
| 34 | + equals( link.attr("aria-haspopup"), "true", "button link aria-haspopup"); |
| 35 | + equals( link.attr("role"), "button", "button link role"); |
| 36 | + equals( link.attr("aria-owns"), ul.attr("id"), "button link aria-owns"); |
| 37 | + equals( link.attr("tabindex"), 0, "button link tabindex"); |
| 38 | + |
| 39 | + $.each( links, function(index){ |
| 40 | + equals( $(this).attr("role"), "option", "menu link #" + index +" role"); |
| 41 | + }); |
| 42 | +}); |
| 43 | + |
6 | 44 | })( jQuery );
|
0 commit comments