corrade-http-templates – Blame information for rev 57

Subversion Repositories:
Rev:
Rev Author Line No. Line
57 office 1 define( [
2 "qunit",
3 "jquery",
4 "./helper",
5 "ui/widgets/menu"
6 ], function( QUnit, $, testHelper ) {
7  
8 var log = testHelper.log,
9 logOutput = testHelper.logOutput,
10 click = testHelper.click;
11  
12 QUnit.module( "menu: methods", {
13 beforeEach: function() {
14 testHelper.clearLog();
15 }
16 } );
17  
18 QUnit.test( "destroy", function( assert ) {
19 assert.expect( 2 );
20 assert.domEqual( "#menu2", function() {
21 $( "#menu2" ).menu().menu( "destroy" );
22 } );
23 assert.domEqual( "#menu5", function() {
24 $( "#menu5" ).menu().menu( "destroy" );
25 } );
26 } );
27  
28 QUnit.test( "enable/disable", function( assert ) {
29 assert.expect( 3 );
30 var element = $( "#menu1" ).menu( {
31 select: function() {
32 log();
33 }
34 } );
35 element.menu( "disable" );
36 assert.hasClasses( element, "ui-state-disabled" );
37 log( "click", true );
38 click( element, "1" );
39 log( "afterclick" );
40 element.menu( "enable" );
41 assert.lacksClasses( element, "ui-state-disabled" );
42 log( "click" );
43 click( element, "1" );
44 log( "afterclick" );
45 assert.equal( logOutput(), "click,afterclick,click,1,afterclick", "Click order not valid." );
46 } );
47  
48 QUnit.test( "refresh", function( assert ) {
49 assert.expect( 5 );
50 var element = $( "#menu1" ).menu();
51 assert.equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
52 element.append( "<li><a href='#'>test item</a></li>" ).menu( "refresh" );
53 assert.equal( element.find( ".ui-menu-item" ).length, 6, "Incorrect number of menu items" );
54 element.find( ".ui-menu-item:last" ).remove().end().menu( "refresh" );
55 assert.equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
56 element.append( "<li>---</li>" ).menu( "refresh" );
57 assert.equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
58 element.children( ":last" ).remove().end().menu( "refresh" );
59 assert.equal( element.find( ".ui-menu-item" ).length, 5, "Incorrect number of menu items" );
60 } );
61  
62 QUnit.test( "refresh submenu", function( assert ) {
63 assert.expect( 2 );
64 var element = $( "#menu2" ).menu();
65 assert.equal( element.find( "ul:first .ui-menu-item" ).length, 3 );
66 element.find( "ul" ).addBack().append( "<li><a href=\"#\">New Item</a></li>" );
67 element.menu( "refresh" );
68 assert.equal( element.find( "ul:first .ui-menu-item" ).length, 4 );
69 } );
70  
71 QUnit.test( "refresh icons (see #9377)", function( assert ) {
72 assert.expect( 3 );
73 var element = $( "#menu1" ).menu();
74 assert.lacksClasses( element, "ui-menu-icons" );
75 element.find( "li:first .ui-menu-item-wrapper" )
76 .html( "<span class='ui-icon ui-icon-disk'></span>Save</a>" );
77 element.menu( "refresh" );
78  
79 assert.hasClasses( element, "ui-menu-icons" );
80 element.find( "li:first .ui-menu-item-wrapper" ).html( "Save" );
81 element.menu( "refresh" );
82 assert.lacksClasses( element, "ui-menu-icons" );
83 } );
84  
85 QUnit.test( "widget", function( assert ) {
86 assert.expect( 2 );
87 var element = $( "#menu1" ).menu(),
88 widgetElement = element.menu( "widget" );
89 assert.equal( widgetElement.length, 1, "one element" );
90 assert.strictEqual( widgetElement[ 0 ], element[ 0 ], "same element" );
91 } );
92  
93 // TODO: test focus method
94  
95 // TODO: test blur method
96  
97 // TODO: test collapseAll method
98  
99 // TODO: test collapse method
100  
101 // TODO: test expand method
102  
103 // TODO: test next method
104  
105 // TODO: test prev method
106  
107 // TODO: test isFirstItem method
108  
109 // TODO: test isLastItem method
110  
111 // TODO: test nextPage method
112  
113 // TODO: test prevPage method
114  
115 // TODO: test select method
116  
117 } );