2 disabled: function( tabs, state ) {
4 internalState = tabs.tabs( "option", "disabled" );
6 if ( internalState === false ) {
9 if ( internalState === true ) {
10 internalState = $.map( new Array( tabs.find( ".ui-tabs-nav li" ).length ), function( _, index ) {
15 expected = $.map( new Array( tabs.find ( ".ui-tabs-nav li" ).length ), function( _, index ) {
16 if ( typeof state === "boolean" ) {
19 return $.inArray( index, state ) !== -1 ? 1 : 0;
23 actual = tabs.find( ".ui-tabs-nav li" ).map(function( index ) {
25 tabIsDisabled = tab.hasClass( "ui-state-disabled" );
27 if ( tabIsDisabled && $.inArray( index, internalState ) !== -1 ) {
30 if ( !tabIsDisabled && $.inArray( index, internalState ) === -1 ) {
33 // mixed state - invalid
37 deepEqual( tabs.tabs( "option", "disabled" ), state );
38 deepEqual( actual, expected );
41 equalHeight: function( tabs, height ) {
42 tabs.find( ".ui-tabs-panel" ).each(function() {
43 equal( $( this ).outerHeight(), height );
47 state: function( tabs ) {
48 var expected = $.makeArray( arguments ).slice( 1 ),
49 actual = tabs.find( ".ui-tabs-nav li" ).map(function() {
51 panel = $( $.ui.tabs.prototype._sanitizeSelector(
52 "#" + tab.attr( "aria-controls" ) ) ),
53 tabIsActive = tab.hasClass( "ui-state-active" ),
54 panelIsActive = panel.css( "display" ) !== "none";
56 if ( tabIsActive && panelIsActive ) {
59 if ( !tabIsActive && !panelIsActive ) {
62 return -1; // mixed state - invalid
64 deepEqual( actual, expected );