Skip to content

Commit 0adeb9b

Browse files
petersendiditscottgonzalez
authored andcommitted
Tabs: Add tabsload event tests.
1 parent 58a41e7 commit 0adeb9b

File tree

1 file changed

+60
-2
lines changed

1 file changed

+60
-2
lines changed

tests/unit/tabs/tabs_events.js

Lines changed: 60 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,8 +191,66 @@ test( "beforeLoad", function() {
191191
equals( panel.html(), "<p>testing</p>", "panel html after" );
192192
});
193193

194-
test( "load", function() {
195-
ok( false, "missing test - untested code is broken code." );
194+
asyncTest( "load", function() {
195+
expect( 21 );
196+
197+
var tab, panelId, panel,
198+
element = $( "#tabs2" );
199+
200+
// init
201+
element.one( "tabsload", function( event, ui ) {
202+
tab = element.find( ".ui-tabs-nav a" ).eq( 2 );
203+
panelId = tab.attr( "aria-controls" );
204+
panel = $( "#" + panelId );
205+
206+
ok( !( "originalEvent" in event ), "originalEvent" );
207+
equals( ui.tab.size(), 1, "tab size" );
208+
strictEqual( ui.tab[ 0 ], tab[ 0 ], "tab" );
209+
equals( ui.panel.size(), 1, "panel size" );
210+
strictEqual( ui.panel[ 0 ], panel[ 0 ], "panel" );
211+
equals( ui.panel.find( "p" ).length, 1, "panel html" );
212+
tabs_state( element, 0, 0, 1, 0, 0 );
213+
tabsload1();
214+
});
215+
element.tabs({ active: 2 });
216+
217+
function tabsload1() {
218+
// .option()
219+
element.one( "tabsload", function( event, ui ) {
220+
tab = element.find( ".ui-tabs-nav a" ).eq( 3 );
221+
panelId = tab.attr( "aria-controls" );
222+
panel = $( "#" + panelId );
223+
224+
ok( !( "originalEvent" in event ), "originalEvent" );
225+
equals( ui.tab.size(), 1, "tab size" );
226+
strictEqual( ui.tab[ 0 ], tab[ 0 ], "tab" );
227+
equals( ui.panel.size(), 1, "panel size" );
228+
strictEqual( ui.panel[ 0 ], panel[ 0 ], "panel" );
229+
equals( ui.panel.find( "p" ).length, 1, "panel html" );
230+
tabs_state( element, 0, 0, 0, 1, 0 );
231+
tabsload2();
232+
});
233+
element.tabs( "option", "active", 3 );
234+
}
235+
236+
function tabsload2() {
237+
// click, change panel content
238+
element.one( "tabsload", function( event, ui ) {
239+
tab = element.find( ".ui-tabs-nav a" ).eq( 4 );
240+
panelId = tab.attr( "aria-controls" );
241+
panel = $( "#" + panelId );
242+
243+
equals( event.originalEvent.type, "click", "originalEvent" );
244+
equals( ui.tab.size(), 1, "tab size" );
245+
strictEqual( ui.tab[ 0 ], tab[ 0 ], "tab" );
246+
equals( ui.panel.size(), 1, "panel size" );
247+
strictEqual( ui.panel[ 0 ], panel[ 0 ], "panel" );
248+
equals( ui.panel.find( "p" ).length, 1, "panel html" );
249+
tabs_state( element, 0, 0, 0, 0, 1 );
250+
start();
251+
});
252+
element.find( ".ui-tabs-nav a" ).eq( 4 ).click();
253+
}
196254
});
197255

198256
}( jQuery ) );

0 commit comments

Comments
 (0)