diff options
Diffstat (limited to 'js/tests/unit/popover.js')
-rw-r--r-- | js/tests/unit/popover.js | 248 |
1 files changed, 124 insertions, 124 deletions
diff --git a/js/tests/unit/popover.js b/js/tests/unit/popover.js index ecab948c7d..c08b6d8ef2 100644 --- a/js/tests/unit/popover.js +++ b/js/tests/unit/popover.js @@ -1,133 +1,133 @@ $(function () { - module('popover') - - test('should provide no conflict', function () { - var popover = $.fn.popover.noConflict() - ok(!$.fn.popover, 'popover was set back to undefined (org value)') - $.fn.popover = popover + module('popover') + + test('should provide no conflict', function () { + var popover = $.fn.popover.noConflict() + ok(!$.fn.popover, 'popover was set back to undefined (org value)') + $.fn.popover = popover + }) + + test('should be defined on jquery object', function () { + var div = $('<div></div>') + ok(div.popover, 'popover method is defined') + }) + + test('should return element', function () { + var div = $('<div></div>') + ok(div.popover() == div, 'document.body returned') + }) + + test('should render popover element', function () { + $.support.transition = false + var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') + .appendTo('#qunit-fixture') + .popover('show') + + ok($('.popover').length, 'popover was inserted') + popover.popover('hide') + ok(!$('.popover').length, 'popover removed') + }) + + test('should store popover instance in popover data object', function () { + $.support.transition = false + var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') + .popover() + + ok(!!popover.data('bs.popover'), 'popover instance exists') + }) + + test('should get title and content from options', function () { + $.support.transition = false + var popover = $('<a href="#">@fat</a>') + .appendTo('#qunit-fixture') + .popover({ + title: function () { + return '@fat' + }, + content: function () { + return 'loves writing tests (╯°□°)╯︵ ┻━┻' + } }) - test('should be defined on jquery object', function () { - var div = $('<div></div>') - ok(div.popover, 'popover method is defined') + popover.popover('show') + + ok($('.popover').length, 'popover was inserted') + equal($('.popover .popover-title').text(), '@fat', 'title correctly inserted') + equal($('.popover .popover-content').text(), 'loves writing tests (╯°□°)╯︵ ┻━┻', 'content correctly inserted') + + popover.popover('hide') + ok(!$('.popover').length, 'popover was removed') + $('#qunit-fixture').empty() + }) + + test('should get title and content from attributes', function () { + $.support.transition = false + var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>') + .appendTo('#qunit-fixture') + .popover() + .popover('show') + + ok($('.popover').length, 'popover was inserted') + equal($('.popover .popover-title').text(), '@mdo', 'title correctly inserted') + equal($('.popover .popover-content').text(), 'loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻', 'content correctly inserted') + + popover.popover('hide') + ok(!$('.popover').length, 'popover was removed') + $('#qunit-fixture').empty() + }) + + + test('should get title and content from attributes #2', function () { + $.support.transition = false + var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>') + .appendTo('#qunit-fixture') + .popover({ + title: 'ignored title option', + content: 'ignored content option' }) - - test('should return element', function () { - var div = $('<div></div>') - ok(div.popover() == div, 'document.body returned') + .popover('show') + + ok($('.popover').length, 'popover was inserted') + equal($('.popover .popover-title').text(), '@mdo', 'title correctly inserted') + equal($('.popover .popover-content').text(), 'loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻', 'content correctly inserted') + + popover.popover('hide') + ok(!$('.popover').length, 'popover was removed') + $('#qunit-fixture').empty() + }) + + test('should respect custom classes', function () { + $.support.transition = false + var popover = $('<a href="#">@fat</a>') + .appendTo('#qunit-fixture') + .popover({ + title: 'Test', + content: 'Test', + template: '<div class="popover foobar"><div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div></div>' }) - test('should render popover element', function () { - $.support.transition = false - var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') - .appendTo('#qunit-fixture') - .popover('show') - - ok($('.popover').length, 'popover was inserted') - popover.popover('hide') - ok(!$('.popover').length, 'popover removed') - }) - - test('should store popover instance in popover data object', function () { - $.support.transition = false - var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') - .popover() - - ok(!!popover.data('bs.popover'), 'popover instance exists') - }) - - test('should get title and content from options', function () { - $.support.transition = false - var popover = $('<a href="#">@fat</a>') - .appendTo('#qunit-fixture') - .popover({ - title: function () { - return '@fat' - }, - content: function () { - return 'loves writing tests (╯°□°)╯︵ ┻━┻' - } - }) - - popover.popover('show') - - ok($('.popover').length, 'popover was inserted') - equal($('.popover .popover-title').text(), '@fat', 'title correctly inserted') - equal($('.popover .popover-content').text(), 'loves writing tests (╯°□°)╯︵ ┻━┻', 'content correctly inserted') - - popover.popover('hide') - ok(!$('.popover').length, 'popover was removed') - $('#qunit-fixture').empty() - }) - - test('should get title and content from attributes', function () { - $.support.transition = false - var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>') - .appendTo('#qunit-fixture') - .popover() - .popover('show') - - ok($('.popover').length, 'popover was inserted') - equal($('.popover .popover-title').text(), '@mdo', 'title correctly inserted') - equal($('.popover .popover-content').text(), 'loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻', 'content correctly inserted') - - popover.popover('hide') - ok(!$('.popover').length, 'popover was removed') - $('#qunit-fixture').empty() - }) - - - test('should get title and content from attributes #2', function () { - $.support.transition = false - var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>') - .appendTo('#qunit-fixture') - .popover({ - title: 'ignored title option', - content: 'ignored content option' - }) - .popover('show') - - ok($('.popover').length, 'popover was inserted') - equal($('.popover .popover-title').text(), '@mdo', 'title correctly inserted') - equal($('.popover .popover-content').text(), 'loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻', 'content correctly inserted') - - popover.popover('hide') - ok(!$('.popover').length, 'popover was removed') - $('#qunit-fixture').empty() - }) - - test('should respect custom classes', function () { - $.support.transition = false - var popover = $('<a href="#">@fat</a>') - .appendTo('#qunit-fixture') - .popover({ - title: 'Test', - content: 'Test', - template: '<div class="popover foobar"><div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div></div>' - }) - - popover.popover('show') - - ok($('.popover').length, 'popover was inserted') - ok($('.popover').hasClass('foobar'), 'custom class is present') - - popover.popover('hide') - ok(!$('.popover').length, 'popover was removed') - $('#qunit-fixture').empty() - }) - - test('should destroy popover', function () { - var popover = $('<div/>').popover({trigger: 'hover'}).on('click.foo', function () {}) - ok(popover.data('bs.popover'), 'popover has data') - ok($._data(popover[0], 'events').mouseover && $._data(popover[0], 'events').mouseout, 'popover has hover event') - ok($._data(popover[0], 'events').click[0].namespace == 'foo', 'popover has extra click.foo event') - popover.popover('show') - popover.popover('destroy') - ok(!popover.hasClass('in'), 'popover is hidden') - ok(!popover.data('popover'), 'popover does not have data') - ok($._data(popover[0],'events').click[0].namespace == 'foo', 'popover still has click.foo') - ok(!$._data(popover[0], 'events').mouseover && !$._data(popover[0], 'events').mouseout, 'popover does not have any events') - }) + popover.popover('show') + + ok($('.popover').length, 'popover was inserted') + ok($('.popover').hasClass('foobar'), 'custom class is present') + + popover.popover('hide') + ok(!$('.popover').length, 'popover was removed') + $('#qunit-fixture').empty() + }) + + test('should destroy popover', function () { + var popover = $('<div/>').popover({trigger: 'hover'}).on('click.foo', function () {}) + ok(popover.data('bs.popover'), 'popover has data') + ok($._data(popover[0], 'events').mouseover && $._data(popover[0], 'events').mouseout, 'popover has hover event') + ok($._data(popover[0], 'events').click[0].namespace == 'foo', 'popover has extra click.foo event') + popover.popover('show') + popover.popover('destroy') + ok(!popover.hasClass('in'), 'popover is hidden') + ok(!popover.data('popover'), 'popover does not have data') + ok($._data(popover[0],'events').click[0].namespace == 'foo', 'popover still has click.foo') + ok(!$._data(popover[0], 'events').mouseover && !$._data(popover[0], 'events').mouseout, 'popover does not have any events') + }) }) |