diff options
author | kborchers <kris.borchers@gmail.com> | 2012-05-24 23:44:51 -0500 |
---|---|---|
committer | kborchers <kris.borchers@gmail.com> | 2012-05-24 23:45:12 -0500 |
commit | fe7ca1f1c3922a301169256ed0614c5529e40454 (patch) | |
tree | 815e4686d2821e80112c12feb62f3a51b198ea34 /tests | |
parent | f63bb4fbc4899dacee2e55784bafc59b4a829954 (diff) | |
download | jquery-ui-fe7ca1f1c3922a301169256ed0614c5529e40454.tar.gz jquery-ui-fe7ca1f1c3922a301169256ed0614c5529e40454.zip |
Menu: Better handling of divider elements and menu items without anchors.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/menu/menu.html | 3 | ||||
-rw-r--r-- | tests/unit/menu/menu_events.js | 27 | ||||
-rw-r--r-- | tests/unit/menu/menu_methods.js | 6 | ||||
-rw-r--r-- | tests/visual/menu/menu.html | 51 |
4 files changed, 76 insertions, 11 deletions
diff --git a/tests/unit/menu/menu.html b/tests/unit/menu/menu.html index 62585d863..a8a76bf14 100644 --- a/tests/unit/menu/menu.html +++ b/tests/unit/menu/menu.html @@ -88,8 +88,11 @@ <a href="#">Delphi</a> <ul> <li class="foo"><a class="foo" href="#">Ada</a></li> + <li> - </li> <li class="foo"><a class="foo" href="#">Saarland</a></li> + <li></li> <li class="foo"><a class="foo" href="#">Salzburg</a></li> + <li>–</li> </ul> </li> <li class="foo"><a class="foo" href="#">Perch</a></li> diff --git a/tests/unit/menu/menu_events.js b/tests/unit/menu/menu_events.js index ec3e7d3c4..2132ff764 100644 --- a/tests/unit/menu/menu_events.js +++ b/tests/unit/menu/menu_events.js @@ -315,16 +315,27 @@ asyncTest("handle keyboard navigation on menu without scroll and with submenus", equal( $("#log").html(), "4,keydown,", "Keydown ESCAPE (close submenu)"); log("keydown",true); - element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } ); - setTimeout( menukeyboard5, 50 ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } ); + setTimeout( function() { + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } ); + setTimeout( function() { + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } ); + equal( $("#log").html(), "0,4,2,0,1,0,6,5,keydown,", "Keydown skip dividers and items without anchors"); + + log("keydown",true); + element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } ); + setTimeout( menukeyboard6, 50 ); + }, 50 ); + }, 50 ); } - function menukeyboard5() { - equal( $("#log").html(), "0,keydown,", "Keydown ENTER (open submenu)"); - - log("keydown",true); - element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } ); - equal( $("#log").html(), "Ada,keydown,", "Keydown ENTER (select item)"); + function menukeyboard6() { + equal( $("#log").html(), "Ada,keydown,", "Keydown ENTER (open submenu)"); start(); } diff --git a/tests/unit/menu/menu_methods.js b/tests/unit/menu/menu_methods.js index fc4fce4f1..c17986816 100644 --- a/tests/unit/menu/menu_methods.js +++ b/tests/unit/menu/menu_methods.js @@ -29,13 +29,17 @@ test( "enable/disable", function() { }); test( "refresh", function() { - expect( 3 ); + expect( 5 ); var menu = $( "#menu1" ).menu(); equal(menu.find(".ui-menu-item").length,5,"Incorrect number of menu items"); menu.append("<li><a href='#'>test item</a></li>").menu("refresh"); equal(menu.find(".ui-menu-item").length,6,"Incorrect number of menu items"); menu.find(".ui-menu-item:last").remove().end().menu("refresh"); equal(menu.find(".ui-menu-item").length,5,"Incorrect number of menu items"); + menu.append("<li>---</li>").menu("refresh"); + equal(menu.find(".ui-menu-item").length,5,"Incorrect number of menu items"); + menu.children(":last").remove().end().menu("refresh"); + equal(menu.find(".ui-menu-item").length,5,"Incorrect number of menu items"); }); test("destroy", function() { diff --git a/tests/visual/menu/menu.html b/tests/visual/menu/menu.html index f92de61db..dd86a6e4b 100644 --- a/tests/visual/menu/menu.html +++ b/tests/visual/menu/menu.html @@ -15,7 +15,7 @@ $( "<p>" ).text( "Selected: " + ui.item.text() ).appendTo( "#log" ); } - $( "#menu1, #menu2, #menu3, .menu4" ).menu({ + $( "#menu1, #menu2, #menu3, .menu4, #menu7" ).menu({ select: logger }); @@ -58,7 +58,6 @@ <li><a href="#">Ada</a></li> <li><a href="#">Adamsville</a></li> <li><a href="#">Addyston</a></li> - <li></li> <li> <a href="#">Delphi</a> <ul> @@ -257,6 +256,54 @@ </div> </div> +<h2>Inline with dividers and elements without anchors</h2> +<ul id="menu7"> + <li>Group 1</li> + <li class="ui-state-disabled"><a href="#">Aberdeen</a></li> + <li><a href="#">Ada</a></li> + <li><a href="#">Adamsville</a></li> + <li><a href="#">Addyston</a></li> + <li></li> + <li>Group 2</li> + <li> + <a href="#">Delphi</a> + <ul> + <li class="ui-state-disabled"><a href="#">Ada</a></li> + <li><a href="#">Saarland</a></li> + <li><a href="#">Salzburg</a></li> + </ul> + </li> + <li><a href="#">Saarland</a></li> + <li>---</li> + <li>Group 3</li> + <li> + <a href="#">Salzburg</a> + <ul> + <li> + <a href="#">Delphi</a> + <ul> + <li><a href="#">Ada</a></li> + <li> - </li> + <li><a href="#">Saarland</a></li> + <li>—</li> + <li><a href="#">Salzburg</a></li> + <li>–</li> + </ul> + </li> + <li> + <a href="#">Delphi</a> + <ul> + <li><a href="#">Ada</a></li> + <li><a href="#">Saarland</a></li> + <li><a href="#">Salzburg</a></li> + </ul> + </li> + <li><a href="#">Perch</a></li> + </ul> + </li> + <li class="ui-state-disabled"><a href="#">Amesville</a></li> +</ul> + <div style="position: absolute; top: 1em; right: 1em;"> Log: <div id="log" style="height: 400px; width: 300px; overflow: auto; border: 1px solid #000;"></div> |