From: Dave Methvin Date: Tue, 28 Jun 2016 01:41:00 +0000 (-0400) Subject: Port #20190 to v3 X-Git-Tag: v3.3.7~37^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a8b29fbf5ad912228a13c7b45470b4909472e43;p=thirdparty%2Fbootstrap.git Port #20190 to v3 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. --- diff --git a/js/tests/unit/scrollspy.js b/js/tests/unit/scrollspy.js index bf5fa0bff5..d50573f27a 100644 --- a/js/tests/unit/scrollspy.js +++ b/js/tests/unit/scrollspy.js @@ -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() }) }) })