corrade-http-templates – Blame information for rev 57

Subversion Repositories:
Rev:
Rev Author Line No. Line
57 office 1 define( [
2 "jquery",
3 "lib/helper",
4 "ui/widgets/tabs"
5 ], function( $, helper ) {
6  
7 return $.extend( helper, {
8 disabled: function( assert, tabs, state ) {
9 var expected, actual,
10 internalState = tabs.tabs( "option", "disabled" );
11  
12 if ( internalState === false ) {
13 internalState = [];
14 }
15 if ( internalState === true ) {
16 internalState = $.map( new Array( tabs.find( ".ui-tabs-nav li" ).length ), function( _, index ) {
17 return index;
18 } );
19 }
20  
21 expected = $.map( new Array( tabs.find( ".ui-tabs-nav li" ).length ), function( _, index ) {
22 if ( typeof state === "boolean" ) {
23 return state ? 1 : 0;
24 } else {
25 return $.inArray( index, state ) !== -1 ? 1 : 0;
26 }
27 } );
28  
29 actual = tabs.find( ".ui-tabs-nav li" ).map( function( index ) {
30 var tab = $( this ),
31 tabIsDisabled = tab.hasClass( "ui-state-disabled" );
32  
33 if ( tabIsDisabled && $.inArray( index, internalState ) !== -1 ) {
34 return 1;
35 }
36 if ( !tabIsDisabled && $.inArray( index, internalState ) === -1 ) {
37 return 0;
38 }
39  
40 // Mixed state - invalid
41 return -1;
42 } ).get();
43  
44 assert.deepEqual( tabs.tabs( "option", "disabled" ), state );
45 assert.deepEqual( actual, expected );
46 },
47  
48 equalHeight: function( assert, tabs, height ) {
49 tabs.find( ".ui-tabs-panel" ).each( function() {
50  
51 // Handle overly-precise values
52 var actualHeight = parseFloat( $( this ).outerHeight().toFixed( 1 ) );
53 assert.equal( actualHeight, height );
54 } );
55 },
56  
57 state: function( assert, tabs ) {
58 var expected = $.makeArray( arguments ).slice( 2 ),
59 actual = tabs.find( ".ui-tabs-nav li" ).map( function() {
60 var tab = $( this ),
61 panel = $( $.ui.tabs.prototype._sanitizeSelector(
62 "#" + tab.attr( "aria-controls" ) ) ),
63 tabIsActive = tab.hasClass( "ui-state-active" ),
64 panelIsActive = panel.css( "display" ) !== "none";
65  
66 if ( tabIsActive && panelIsActive ) {
67 return 1;
68 }
69 if ( !tabIsActive && !panelIsActive ) {
70 return 0;
71 }
72 return -1; // Mixed state - invalid
73 } ).get();
74 assert.deepEqual( actual, expected );
75 }
76 } );
77  
78 } );