]> source.dussan.org Git - jquery-ui.git/commitdiff
Menu tests: Cleanup.
authorScott González <scott.gonzalez@gmail.com>
Thu, 4 Aug 2011 01:15:38 +0000 (21:15 -0400)
committerScott González <scott.gonzalez@gmail.com>
Thu, 4 Aug 2011 01:15:38 +0000 (21:15 -0400)
tests/unit/menu/menu.html
tests/unit/menu/menu_events.js
tests/unit/menu/menu_test_helpers.js [new file with mode: 0644]

index 551d171bda0e2a8e0cd12d54878f05c9e4df9e3f..dc5b71a007fbce60847f19cff9e7ca8771ce4ce5 100644 (file)
        <script src="../../jquery.simulate.js"></script>
        <script src="../testsuite.js"></script>
 
-       <script>
-       function log(message,clear) {
-               if (clear && clear === true) {
-                       $("#log").html("");
-               }
-               if ( message === undefined ) {
-                       message = $("#log").data("lastItem");
-               }
-               $("#log").prepend( message + "," );
-       }
-       function clickMenu(menu,item) {
-               $("#log").data("lastItem",item);
-               $('li:eq(' + item + ') a',menu).trigger("click");
-       }
-       </script>
+       <script src="menu_test_helpers.js"></script>
        <script src="menu_core.js"></script>
        <script src="menu_defaults.js"></script>
        <script src="menu_events.js"></script>
        <script src="menu_methods.js"></script>
        <script src="menu_options.js"></script>
 
-       <script type="text/javascript" src="../swarminject.js"></script>
+       <script src="../swarminject.js"></script>
        <style>
-       #qunit-fixture { font-size: 10pt; font-family: "trebuchet ms", verdana, arial; }
+       .ui-menu {
+               font-size: 15px;
+       }
        #menu3 {
                height: 250px;
                overflow: auto;
index 19ac11c68c8fb5ca83fa36032981064baf5ff2a5..312da0d4cf6fb7603eeff5395c342fb1d9aeae2c 100644 (file)
@@ -9,15 +9,15 @@ test("handle click on menu", function() {
        expect(1);
        var ac = $('#menu1').menu({
                select: function(event, ui) {
-                       log();
+                       menu_log();
                }
        });
-       log("click",true);
-       clickMenu($('#menu1'),"1");
-       log("afterclick");
-       clickMenu( ac,"2");
-       clickMenu($('#menu1'),"3");
-       clickMenu( ac,"1");
+       menu_log("click",true);
+       menu_click($('#menu1'),"1");
+       menu_log("afterclick");
+       menu_click( ac,"2");
+       menu_click($('#menu1'),"3");
+       menu_click( ac,"1");
        equals( $("#log").html(), "1,3,2,afterclick,1,click,", "Click order not valid.");
 });
 
@@ -45,59 +45,59 @@ test("handle keyboard navigation on menu without scroll and without submenus", f
        expect(12);
        var element = $('#menu1').menu({
                select: function(event, ui) {
-                       log($(ui.item[0]).text());
+                       menu_log($(ui.item[0]).text());
                },
                focus: function( event, ui ) {
-                       log($(event.target).find(".ui-state-focus").parent().index());
+                       menu_log($(event.target).find(".ui-state-focus").parent().index());
                }
        });
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        equals( $("#log").html(), "1,0,keydown,", "Keydown DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
        equals( $("#log").html(), "keydown,", "Keydown LEFT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
        equals( $("#log").html(), "keydown,", "Keydown RIGHT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
        equals( $("#log").html(), "4,keydown,", "Keydown PAGE_DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
        equals( $("#log").html(), "keydown,", "Keydown PAGE_DOWN (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown PAGE_UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
        equals( $("#log").html(), "keydown,", "Keydown PAGE_UP (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.END } );
        equals( $("#log").html(), "4,keydown,", "Keydown END");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
        equals( $("#log").html(), "0,keydown,", "Keydown HOME");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.ESCAPE } );
        equals( $("#log").html(), "keydown,", "Keydown ESCAPE (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
        equals( $("#log").html(), "Aberdeen,keydown,", "Keydown ENTER");
 });
@@ -106,27 +106,27 @@ asyncTest("handle keyboard navigation on menu without scroll and with submenus",
        expect(14);
        var element = $('#menu2').menu({
                select: function(event, ui) {
-                       log($(ui.item[0]).text());
+                       menu_log($(ui.item[0]).text());
                },
                focus: function( event, ui ) {
-                       log($(event.target).find(".ui-state-focus").parent().index());
+                       menu_log($(event.target).find(".ui-state-focus").parent().index());
                }
        });
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        equals( $("#log").html(), "1,0,keydown,", "Keydown DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
        equals( $("#log").html(), "keydown,", "Keydown LEFT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
@@ -138,7 +138,7 @@ asyncTest("handle keyboard navigation on menu without scroll and with submenus",
        }, 50);
 
        setTimeout( function() {
-               log("keydown",true);
+               menu_log("keydown",true);
                element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
                equals( $("#log").html(), "4,keydown,", "Keydown LEFT (close submenu)");
 
@@ -146,41 +146,41 @@ asyncTest("handle keyboard navigation on menu without scroll and with submenus",
                element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
 
                setTimeout( function() {
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
                        equals( $("#log").html(), "2,keydown,", "Keydown PAGE_DOWN");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
                        equals( $("#log").html(), "keydown,", "Keydown PAGE_DOWN (no effect)");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
                        equals( $("#log").html(), "0,keydown,", "Keydown PAGE_UP");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
                        equals( $("#log").html(), "keydown,", "Keydown PAGE_UP (no effect)");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.END } );
                        equals( $("#log").html(), "2,keydown,", "Keydown END");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
                        equals( $("#log").html(), "0,keydown,", "Keydown HOME");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.ESCAPE } );
                        equals( $("#log").html(), "4,keydown,", "Keydown ESCAPE (close submenu)");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
 
                        setTimeout( function() {
                                equals( $("#log").html(), "0,keydown,", "Keydown ENTER (open submenu)");
 
-                               log("keydown",true);
+                               menu_log("keydown",true);
                                element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
                                equals( $("#log").html(), "Ada,keydown,", "Keydown ENTER (select item)");
 
@@ -195,67 +195,67 @@ test("handle keyboard navigation on menu with scroll and without submenus", func
        expect(14);
        var element = $('#menu3').menu({
                select: function(event, ui) {
-                       log($(ui.item[0]).text());
+                       menu_log($(ui.item[0]).text());
                },
                focus: function( event, ui ) {
-                       log($(event.target).find(".ui-state-focus").parent().index());
+                       menu_log($(event.target).find(".ui-state-focus").parent().index());
                }
        });
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        equals( $("#log").html(), "1,0,keydown,", "Keydown DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
        equals( $("#log").html(), "keydown,", "Keydown LEFT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
        equals( $("#log").html(), "keydown,", "Keydown RIGHT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
        equals( $("#log").html(), "10,keydown,", "Keydown PAGE_DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
        equals( $("#log").html(), "20,keydown,", "Keydown PAGE_DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
        equals( $("#log").html(), "10,keydown,", "Keydown PAGE_UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown PAGE_UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
        equals( $("#log").html(), "keydown,", "Keydown PAGE_UP (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.END } );
        equals( $("#log").html(), "37,keydown,", "Keydown END");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
        equals( $("#log").html(), "keydown,", "Keydown PAGE_DOWN (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
        equals( $("#log").html(), "0,keydown,", "Keydown HOME");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.ESCAPE } );
        equals( $("#log").html(), "keydown,", "Keydown ESCAPE (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
        equals( $("#log").html(), "Aberdeen,keydown,", "Keydown ENTER");
 });
@@ -264,27 +264,27 @@ asyncTest("handle keyboard navigation on menu with scroll and with submenus", fu
        expect(14);
        var element = $('#menu4').menu({
                select: function(event, ui) {
-                       log($(ui.item[0]).text());
+                       menu_log($(ui.item[0]).text());
                },
                focus: function( event, ui ) {
-                       log($(event.target).find(".ui-state-focus").parent().index());
+                       menu_log($(event.target).find(".ui-state-focus").parent().index());
                }
        });
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        equals( $("#log").html(), "1,0,keydown,", "Keydown DOWN");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.UP } );
        equals( $("#log").html(), "0,keydown,", "Keydown UP");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
        equals( $("#log").html(), "keydown,", "Keydown LEFT (no effect)");
 
-       log("keydown",true);
+       menu_log("keydown",true);
        element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
        element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
 
@@ -293,7 +293,7 @@ asyncTest("handle keyboard navigation on menu with scroll and with submenus", fu
        }, 50);
 
        setTimeout( function() {
-               log("keydown",true);
+               menu_log("keydown",true);
                element.simulate( "keydown", { keyCode: $.ui.keyCode.LEFT } );
                equals( $("#log").html(), "1,keydown,", "Keydown LEFT (close submenu)");
 
@@ -301,41 +301,41 @@ asyncTest("handle keyboard navigation on menu with scroll and with submenus", fu
                element.simulate( "keydown", { keyCode: $.ui.keyCode.RIGHT } );
 
                setTimeout( function() {
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
                        equals( $("#log").html(), "10,keydown,", "Keydown PAGE_DOWN");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_DOWN } );
                        equals( $("#log").html(), "20,keydown,", "Keydown PAGE_DOWN");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
                        equals( $("#log").html(), "10,keydown,", "Keydown PAGE_UP");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.PAGE_UP } );
                        equals( $("#log").html(), "0,keydown,", "Keydown PAGE_UP");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.END } );
                        equals( $("#log").html(), "27,keydown,", "Keydown END");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.HOME } );
                        equals( $("#log").html(), "0,keydown,", "Keydown HOME");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.ESCAPE } );
                        equals( $("#log").html(), "1,keydown,", "Keydown ESCAPE (close submenu)");
 
-                       log("keydown",true);
+                       menu_log("keydown",true);
                        element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
 
                        setTimeout( function() {
                                equals( $("#log").html(), "0,keydown,", "Keydown ENTER (open submenu)");
 
-                               log("keydown",true);
+                               menu_log("keydown",true);
                                element.simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );
                                equals( $("#log").html(), "Aberdeen,keydown,", "Keydown ENTER (select item)");
 
diff --git a/tests/unit/menu/menu_test_helpers.js b/tests/unit/menu/menu_test_helpers.js
new file mode 100644 (file)
index 0000000..717cfc4
--- /dev/null
@@ -0,0 +1,14 @@
+function menu_log( message, clear ) {
+       if ( clear ) {
+               $( "#log" ).empty();
+       }
+       if ( message === undefined ) {
+               message = $( "#log" ).data( "lastItem" );
+       }
+       $( "#log" ).prepend( message + "," );
+}
+
+function menu_click( menu, item ) {
+       $( "#log" ).data( "lastItem", item );
+       menu.find( "li:eq(" + item + ") a" ).trigger( "click" );
+}