Mercurial > wikked
comparison static/bootstrap/js/tests/unit/bootstrap-popover.js @ 88:a5a3d454eac9
Updated Bootstrap.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Fri, 05 Apr 2013 08:08:12 -0700 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
87:c0cf67362fb1 | 88:a5a3d454eac9 |
---|---|
1 $(function () { | |
2 | |
3 module("bootstrap-popover") | |
4 | |
5 test("should provide no conflict", function () { | |
6 var popover = $.fn.popover.noConflict() | |
7 ok(!$.fn.popover, 'popover was set back to undefined (org value)') | |
8 $.fn.popover = popover | |
9 }) | |
10 | |
11 test("should be defined on jquery object", function () { | |
12 var div = $('<div></div>') | |
13 ok(div.popover, 'popover method is defined') | |
14 }) | |
15 | |
16 test("should return element", function () { | |
17 var div = $('<div></div>') | |
18 ok(div.popover() == div, 'document.body returned') | |
19 }) | |
20 | |
21 test("should render popover element", function () { | |
22 $.support.transition = false | |
23 var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') | |
24 .appendTo('#qunit-fixture') | |
25 .popover('show') | |
26 | |
27 ok($('.popover').length, 'popover was inserted') | |
28 popover.popover('hide') | |
29 ok(!$(".popover").length, 'popover removed') | |
30 }) | |
31 | |
32 test("should store popover instance in popover data object", function () { | |
33 $.support.transition = false | |
34 var popover = $('<a href="#" title="mdo" data-content="http://twitter.com/mdo">@mdo</a>') | |
35 .popover() | |
36 | |
37 ok(!!popover.data('popover'), 'popover instance exists') | |
38 }) | |
39 | |
40 test("should get title and content from options", function () { | |
41 $.support.transition = false | |
42 var popover = $('<a href="#">@fat</a>') | |
43 .appendTo('#qunit-fixture') | |
44 .popover({ | |
45 title: function () { | |
46 return '@fat' | |
47 } | |
48 , content: function () { | |
49 return 'loves writing tests (╯°□°)╯︵ ┻━┻' | |
50 } | |
51 }) | |
52 | |
53 popover.popover('show') | |
54 | |
55 ok($('.popover').length, 'popover was inserted') | |
56 equals($('.popover .popover-title').text(), '@fat', 'title correctly inserted') | |
57 equals($('.popover .popover-content').text(), 'loves writing tests (╯°□°)╯︵ ┻━┻', 'content correctly inserted') | |
58 | |
59 popover.popover('hide') | |
60 ok(!$('.popover').length, 'popover was removed') | |
61 $('#qunit-fixture').empty() | |
62 }) | |
63 | |
64 test("should get title and content from attributes", function () { | |
65 $.support.transition = false | |
66 var popover = $('<a href="#" title="@mdo" data-content="loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻" >@mdo</a>') | |
67 .appendTo('#qunit-fixture') | |
68 .popover() | |
69 .popover('show') | |
70 | |
71 ok($('.popover').length, 'popover was inserted') | |
72 equals($('.popover .popover-title').text(), '@mdo', 'title correctly inserted') | |
73 equals($('.popover .popover-content').text(), "loves data attributes (づ。◕‿‿◕。)づ ︵ ┻━┻", 'content correctly inserted') | |
74 | |
75 popover.popover('hide') | |
76 ok(!$('.popover').length, 'popover was removed') | |
77 $('#qunit-fixture').empty() | |
78 }) | |
79 | |
80 test("should respect custom classes", function() { | |
81 $.support.transition = false | |
82 var popover = $('<a href="#">@fat</a>') | |
83 .appendTo('#qunit-fixture') | |
84 .popover({ | |
85 title: 'Test' | |
86 , content: 'Test' | |
87 , template: '<div class="popover foobar"><div class="arrow"></div><div class="inner"><h3 class="title"></h3><div class="content"><p></p></div></div></div>' | |
88 }) | |
89 | |
90 popover.popover('show') | |
91 | |
92 ok($('.popover').length, 'popover was inserted') | |
93 ok($('.popover').hasClass('foobar'), 'custom class is present') | |
94 | |
95 popover.popover('hide') | |
96 ok(!$('.popover').length, 'popover was removed') | |
97 $('#qunit-fixture').empty() | |
98 }) | |
99 | |
100 test("should destroy popover", function () { | |
101 var popover = $('<div/>').popover({trigger: 'hover'}).on('click.foo', function(){}) | |
102 ok(popover.data('popover'), 'popover has data') | |
103 ok($._data(popover[0], 'events').mouseover && $._data(popover[0], 'events').mouseout, 'popover has hover event') | |
104 ok($._data(popover[0], 'events').click[0].namespace == 'foo', 'popover has extra click.foo event') | |
105 popover.popover('show') | |
106 popover.popover('destroy') | |
107 ok(!popover.hasClass('in'), 'popover is hidden') | |
108 ok(!popover.data('popover'), 'popover does not have data') | |
109 ok($._data(popover[0],'events').click[0].namespace == 'foo', 'popover still has click.foo') | |
110 ok(!$._data(popover[0], 'events').mouseover && !$._data(popover[0], 'events').mouseout, 'popover does not have any events') | |
111 }) | |
112 | |
113 }) |