3 var log = TestHelpers.menu.log,
4 logOutput = TestHelpers.menu.logOutput,
5 click = TestHelpers.menu.click;
7 module( "menu: methods", {
9 TestHelpers.menu.clearLog();
13 test( "destroy", function() {
15 domEqual( "#menu1", function() {
16 $( "#menu1" ).menu().menu( "destroy" );
18 domEqual( "#menu2", function() {
19 $( "#menu2" ).menu().menu( "destroy" );
21 domEqual( "#menu5", function() {
22 $( "#menu5").menu().menu( "destroy" );
24 domEqual( "#menu6", function() {
25 $( "#menu6" ).menu().menu( "destroy" );
29 test( "enable/disable", function() {
31 var element = $( "#menu1" ).menu({
36 element.menu( "disable" );
37 ok( element.is( ".ui-state-disabled" ), "Missing ui-state-disabled class" );
39 click( element, "1" );
41 element.menu( "enable" );
42 ok( element.not( ".ui-state-disabled" ), "Has ui-state-disabled class" );
44 click( element, "1" );
46 equal( logOutput(), "click,afterclick,click,1,afterclick", "Click order not valid." );
49 test( "refresh", function() {
51 var element = $( "#menu1" ).menu();
52 equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
53 element.append( "<li><a href='#'>test item</a></li>" ).menu( "refresh" );
54 equal( element.find( ".ui-menu-item" ).length, 6, "Incorrect number of menu items" );
55 element.find( ".ui-menu-item:last" ).remove().end().menu( "refresh" );
56 equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
57 element.append( "<li>---</li>" ).menu( "refresh" );
58 equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
59 element.children( ":last" ).remove().end().menu( "refresh" );
60 equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
63 test( "refresh submenu", function() {
65 var element = $( "#menu2" ).menu();
66 equal( element.find( "ul:first .ui-menu-item" ).length, 3 );
67 element.find( "ul" ).addBack().append( "<li><a href=\"#\">New Item</a></li>" );
68 element.menu("refresh");
69 equal( element.find( "ul:first .ui-menu-item" ).length, 4 );
72 test( "widget", function() {
74 var element = $( "#menu1" ).menu(),
75 widgetElement = element.menu( "widget" );
76 equal( widgetElement.length, 1, "one element" );
77 strictEqual( widgetElement[ 0 ], element[ 0 ], "same element" );
80 // TODO: test focus method
82 // TODO: test blur method
84 // TODO: test collapseAll method
86 // TODO: test collapse method
88 // TODO: test expand method
90 // TODO: test next method
92 // TODO: test prev method
94 // TODO: test isFirstItem method
96 // TODO: test isLastItem method
98 // TODO: test nextPage method
100 // TODO: test prevPage method
102 // TODO: test select method