]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Port #20190 to v3
authorDave Methvin <dave.methvin@gmail.com>
Tue, 28 Jun 2016 01:41:00 +0000 (21:41 -0400)
committerChris Rebert <code@chrisrebert.com>
Fri, 8 Jul 2016 06:32:18 +0000 (23:32 -0700)
Scrollspy test: Allow for async .then() in jQuery 3; fixes #20182

Instead of doing a new assert.async(), just do a single one for the entire test
and let the .then() be async as well.

js/tests/unit/scrollspy.js

index bf5fa0bff55689d11342d4b4873ccf7a7eb0d408..d50573f27a194276c51b78e59b5be7f593907aae 100644 (file)
@@ -258,21 +258,21 @@ $(function () {
     var testElementIsActiveAfterScroll = function (element, target) {
       var deferred = $.Deferred()
       var scrollHeight = Math.ceil($content.scrollTop() + $(target).position().top)
-      var done = assert.async()
       $content.one('scroll', function () {
         assert.ok($(element).hasClass('active'), 'target:' + target + ', element: ' + element)
-        done()
         deferred.resolve()
       })
       $content.scrollTop(scrollHeight)
       return deferred.promise()
     }
 
+    var done = assert.async()
     $.when(testElementIsActiveAfterScroll('#li-100-5', '#div-100-5'))
       .then(function () { return testElementIsActiveAfterScroll('#li-100-4', '#div-100-4') })
       .then(function () { return testElementIsActiveAfterScroll('#li-100-3', '#div-100-3') })
       .then(function () { return testElementIsActiveAfterScroll('#li-100-2', '#div-100-2') })
       .then(function () { return testElementIsActiveAfterScroll('#li-100-1', '#div-100-1') })
+      .then(function () { done() })
   })
 
 })