aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorkborchers <kris.borchers@gmail.com>2012-05-24 23:44:51 -0500
committerkborchers <kris.borchers@gmail.com>2012-05-24 23:45:12 -0500
commitfe7ca1f1c3922a301169256ed0614c5529e40454 (patch)
tree815e4686d2821e80112c12feb62f3a51b198ea34 /tests
parentf63bb4fbc4899dacee2e55784bafc59b4a829954 (diff)
downloadjquery-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.html3
-rw-r--r--tests/unit/menu/menu_events.js27
-rw-r--r--tests/unit/menu/menu_methods.js6
-rw-r--r--tests/visual/menu/menu.html51
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>&ndash;</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>&mdash;</li>
+ <li><a href="#">Salzburg</a></li>
+ <li>&ndash;</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>