You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							79 lines
						
					
					
						
							2.7 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							79 lines
						
					
					
						
							2.7 KiB
						
					
					
				| $(function () { | |
|   'use strict' | |
| 
 | |
|   QUnit.module('alert plugin') | |
| 
 | |
|   QUnit.test('should be defined on jquery object', function (assert) { | |
|     assert.expect(1) | |
|     assert.ok($(document.body).alert, 'alert method is defined') | |
|   }) | |
| 
 | |
|   QUnit.module('alert', { | |
|     beforeEach: function () { | |
|       // Run all tests in noConflict mode -- it's the only way to ensure that the plugin works in noConflict mode | |
|       $.fn.bootstrapAlert = $.fn.alert.noConflict() | |
|     }, | |
|     afterEach: function () { | |
|       $.fn.alert = $.fn.bootstrapAlert | |
|       delete $.fn.bootstrapAlert | |
|     } | |
|   }) | |
| 
 | |
|   QUnit.test('should provide no conflict', function (assert) { | |
|     assert.expect(1) | |
|     assert.strictEqual($.fn.alert, undefined, 'alert was set back to undefined (org value)') | |
|   }) | |
| 
 | |
|   QUnit.test('should return jquery collection containing the element', function (assert) { | |
|     assert.expect(2) | |
|     var $el = $('<div/>') | |
|     var $alert = $el.bootstrapAlert() | |
|     assert.ok($alert instanceof $, 'returns jquery collection') | |
|     assert.strictEqual($alert[0], $el[0], 'collection contains element') | |
|   }) | |
| 
 | |
|   QUnit.test('should fade element out on clicking .close', function (assert) { | |
|     assert.expect(1) | |
|     var alertHTML = '<div class="alert alert-danger fade show">' | |
|         + '<a class="close" href="#" data-dismiss="alert">×</a>' | |
|         + '<p><strong>Holy guacamole!</strong> Best check yo self, you\'re not looking too good.</p>' | |
|         + '</div>' | |
| 
 | |
|     var $alert = $(alertHTML).bootstrapAlert().appendTo($('#qunit-fixture')) | |
| 
 | |
|     $alert.find('.close').trigger('click') | |
| 
 | |
|     assert.strictEqual($alert.hasClass('show'), false, 'remove .show class on .close click') | |
|   }) | |
| 
 | |
|   QUnit.test('should remove element when clicking .close', function (assert) { | |
|     assert.expect(2) | |
|     var alertHTML = '<div class="alert alert-danger fade show">' | |
|         + '<a class="close" href="#" data-dismiss="alert">×</a>' | |
|         + '<p><strong>Holy guacamole!</strong> Best check yo self, you\'re not looking too good.</p>' | |
|         + '</div>' | |
|     var $alert = $(alertHTML).appendTo('#qunit-fixture').bootstrapAlert() | |
| 
 | |
|     assert.notEqual($('#qunit-fixture').find('.alert').length, 0, 'element added to dom') | |
| 
 | |
|     $alert.find('.close').trigger('click') | |
| 
 | |
|     assert.strictEqual($('#qunit-fixture').find('.alert').length, 0, 'element removed from dom') | |
|   }) | |
| 
 | |
|   QUnit.test('should not fire closed when close is prevented', function (assert) { | |
|     assert.expect(1) | |
|     var done = assert.async() | |
|     $('<div class="alert"/>') | |
|       .on('close.bs.alert', function (e) { | |
|         e.preventDefault() | |
|         assert.ok(true, 'close event fired') | |
|         done() | |
|       }) | |
|       .on('closed.bs.alert', function () { | |
|         assert.ok(false, 'closed event fired') | |
|       }) | |
|       .bootstrapAlert('close') | |
|   }) | |
| 
 | |
| })
 |