| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | $(function () { | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |     module('tabs') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should provide no conflict', function () { | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |         var tab = $.fn.tab.noConflict() | 
					
						
							|  |  |  |         ok(!$.fn.tab, 'tab was set back to undefined (org value)') | 
					
						
							|  |  |  |         $.fn.tab = tab | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should be defined on jquery object', function () { | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |         ok($(document.body).tab, 'tabs method is defined') | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should return element', function () { | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |         ok($(document.body).tab()[0] == document.body, 'document.body returned') | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should activate element by tab id', function () { | 
					
						
							|  |  |  |         var tabsHTML = '<ul class="tabs">' + | 
					
						
							|  |  |  |             '<li><a href="#home">Home</a></li>' + | 
					
						
							|  |  |  |             '<li><a href="#profile">Profile</a></li>' + | 
					
						
							|  |  |  |             '</ul>' | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         $('<ul><li id="home"></li><li id="profile"></li></ul>').appendTo('#qunit-fixture') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $(tabsHTML).find('li:last a').tab('show') | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         equal($('#qunit-fixture').find('.active').attr('id'), 'profile') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $(tabsHTML).find('li:first a').tab('show') | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         equal($('#qunit-fixture').find('.active').attr('id'), 'home') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should activate element by tab id', function () { | 
					
						
							|  |  |  |         var pillsHTML = '<ul class="pills">' + | 
					
						
							|  |  |  |             '<li><a href="#home">Home</a></li>' + | 
					
						
							|  |  |  |             '<li><a href="#profile">Profile</a></li>' + | 
					
						
							|  |  |  |             '</ul>' | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         $('<ul><li id="home"></li><li id="profile"></li></ul>').appendTo('#qunit-fixture') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $(pillsHTML).find('li:last a').tab('show') | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         equal($('#qunit-fixture').find('.active').attr('id'), 'profile') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $(pillsHTML).find('li:first a').tab('show') | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |         equal($('#qunit-fixture').find('.active').attr('id'), 'home') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('should not fire closed when close is prevented', function () { | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |         $.support.transition = false | 
					
						
							|  |  |  |         stop(); | 
					
						
							|  |  |  |         $('<div class="tab"/>') | 
					
						
							|  |  |  |           .on('show.bs.tab', function (e) { | 
					
						
							|  |  |  |             e.preventDefault(); | 
					
						
							|  |  |  |             ok(true); | 
					
						
							|  |  |  |             start(); | 
					
						
							|  |  |  |           }) | 
					
						
							|  |  |  |           .on('shown.bs.tab', function () { | 
					
						
							|  |  |  |             ok(false); | 
					
						
							|  |  |  |           }) | 
					
						
							|  |  |  |           .tab('show') | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |       test('show and shown events should reference correct relatedTarget', function () { | 
					
						
							|  |  |  |         var dropHTML = '<ul class="drop">' + | 
					
						
							|  |  |  |             '<li class="dropdown"><a data-toggle="dropdown" href="#">1</a>' + | 
					
						
							|  |  |  |             '<ul class="dropdown-menu">' + | 
					
						
							|  |  |  |             '<li><a href="#1-1" data-toggle="tab">1-1</a></li>' + | 
					
						
							|  |  |  |             '<li><a href="#1-2" data-toggle="tab">1-2</a></li>' + | 
					
						
							|  |  |  |             '</ul>' + | 
					
						
							|  |  |  |             '</li>' + | 
					
						
							|  |  |  |             '</ul>' | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |         $(dropHTML).find('ul>li:first a').tab('show').end() | 
					
						
							| 
									
										
										
										
											2014-04-17 21:36:17 +03:00
										 |  |  |           .find('ul>li:last a') | 
					
						
							|  |  |  |           .on('show.bs.tab', function (event) { | 
					
						
							|  |  |  |             equal(event.relatedTarget.hash, '#1-1') | 
					
						
							|  |  |  |           }) | 
					
						
							|  |  |  |           .on('show.bs.tab', function (event) { | 
					
						
							|  |  |  |             equal(event.relatedTarget.hash, '#1-1') | 
					
						
							|  |  |  |           }) | 
					
						
							|  |  |  |           .tab('show') | 
					
						
							| 
									
										
										
										
											2014-01-24 11:24:23 +02:00
										 |  |  |       }) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | }) |