]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Close #21249 : Add a Unit test for #21227
authorJohann-S <johann.servoire@gmail.com>
Thu, 29 Dec 2016 09:40:32 +0000 (10:40 +0100)
committerMark Otto <markd.otto@gmail.com>
Thu, 29 Dec 2016 21:28:42 +0000 (13:28 -0800)
js/tests/unit/popover.js
js/tests/unit/tooltip.js

index 5452def585d0a393799cec87a9bf5d4073465e8d..64c8c556aca212b4fc0c640502597fd6b5f293d8 100644 (file)
@@ -332,4 +332,36 @@ $(function () {
       done()
     }
   })
+
+  QUnit.test('should hide popovers when their containing modal is closed', function (assert) {
+    assert.expect(1)
+    var done = assert.async()
+    var templateHTML = '<div id="modal-test" class="modal">' +
+                          '<div class="modal-dialog" role="document">' +
+                            '<div class="modal-content">' +
+                              '<div class="modal-body">' +
+                                '<button id="popover-test" type="button" class="btn btn-secondary" data-toggle="popover" data-placement="top" data-content="Popover">' +
+                                  'Popover on top' +
+                                '</button>' +
+                              '</div>' +
+                            '</div>' +
+                          '</div>' +
+                        '</div>'
+
+    $(templateHTML).appendTo('#qunit-fixture')
+    $('#popover-test')
+      .on('shown.bs.popover', function () {
+        $('#modal-test').modal('hide')
+      })
+      .on('hide.bs.popover', function () {
+        assert.ok(true, 'popover hide')
+        done()
+      })
+
+    $('#modal-test')
+      .on('shown.bs.modal', function () {
+        $('#popover-test').bootstrapPopover('show')
+      })
+      .modal('show')
+  })
 })
index 7ff967fabc8e64cfccbe9490c545c3ba19041708..e1aec5551ff4e9c90ca07c0e9c915ef87f82e754 100644 (file)
@@ -839,4 +839,34 @@ $(function () {
     assert.ok(showingTooltip(), 'tooltip is faded in again')
   })
 
+  QUnit.test('should hide tooltip when their containing modal is closed', function (assert) {
+    assert.expect(1)
+    var done = assert.async()
+    var templateHTML = '<div id="modal-test" class="modal">' +
+                          '<div class="modal-dialog" role="document">' +
+                            '<div class="modal-content">' +
+                              '<div class="modal-body">' +
+                                '<a id="tooltipTest" href="#" data-toggle="tooltip" title="Some tooltip text!">Tooltip</a>' +
+                              '</div>' +
+                            '</div>' +
+                          '</div>' +
+                        '</div>'
+
+    $(templateHTML).appendTo('#qunit-fixture')
+    $('#tooltipTest')
+      .bootstrapTooltip({ trigger: 'manuel' })
+      .on('shown.bs.tooltip', function () {
+        $('#modal-test').modal('hide')
+      })
+      .on('hide.bs.tooltip', function () {
+        assert.ok(true, 'tooltip hide')
+        done()
+      })
+
+    $('#modal-test')
+      .on('shown.bs.modal', function () {
+        $('#tooltipTest').bootstrapTooltip('show')
+      })
+      .modal('show')
+  })
 })