aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/effects
diff options
context:
space:
mode:
authorMichał Gołębiowski-Owczarek <m.goleb@gmail.com>2020-05-16 09:16:24 +0200
committerGitHub <noreply@github.com>2020-05-16 09:16:24 +0200
commite7a10c70ae75c741992afdda60a433be205fd85e (patch)
tree7c9f0d717f944107930608316ed346fbdf5f12c5 /tests/unit/effects
parentf4ef03e57edd7e51cb134e902679c7bddc3daaee (diff)
downloadjquery-ui-e7a10c70ae75c741992afdda60a433be205fd85e.tar.gz
jquery-ui-e7a10c70ae75c741992afdda60a433be205fd85e.zip
Tests: Ensure no timers are running at the end of each test (#1920)
This helps fix issues that make tooltip tests sometimes fail when run against jQuery 3.2 or newer due to timing differences. Details: * Add the `moduleAfterEach` function ensuring no timers are running. * Attach this function via `common.testWidget`. * Attach this function to most test suites. * Add a tooltip test helper cleaning up leftover timers. * Rename legacy `setup`/`teardown` hooks to `beforeEach`/`afterEach`. Closes gh-1920
Diffstat (limited to 'tests/unit/effects')
-rw-r--r--tests/unit/effects/core.js9
-rw-r--r--tests/unit/effects/scale.js5
2 files changed, 8 insertions, 6 deletions
diff --git a/tests/unit/effects/core.js b/tests/unit/effects/core.js
index d095bfbd5..7ae56aef5 100644
--- a/tests/unit/effects/core.js
+++ b/tests/unit/effects/core.js
@@ -2,6 +2,7 @@ define( [
"qunit",
"jquery",
"lib/common",
+ "lib/helper",
"ui/effect",
"ui/effects/effect-blind",
"ui/effects/effect-bounce",
@@ -18,7 +19,7 @@ define( [
"ui/effects/effect-size",
"ui/effects/effect-slide",
"ui/effects/effect-transfer"
-], function( QUnit, $, common ) {
+], function( QUnit, $, common, helper ) {
QUnit.assert.present = function( value, array, message ) {
this.push( jQuery.inArray( value, array ) !== -1, value, array, message );
@@ -34,7 +35,7 @@ var minDuration = 60,
// Duration is used for "long" animates where we plan on testing properties during animation
duration = 200;
-QUnit.module( "effects.core" );
+QUnit.module( "effects.core", { afterEach: helper.moduleAfterEach } );
// TODO: test all signatures of .show(), .hide(), .toggle().
// Look at core's signatures and UI's signatures.
@@ -97,7 +98,7 @@ QUnit.test( "removeClass", function( assert ) {
assert.equal( "", element[ 0 ].className );
} );
-QUnit.module( "effects.core: animateClass" );
+QUnit.module( "effects.core: animateClass", { afterEach: helper.moduleAfterEach } );
QUnit.test( "animateClass works with borderStyle", function( assert ) {
var ready = assert.async();
@@ -273,7 +274,7 @@ QUnit.test( "createPlaceholder: preserves layout affecting properties", function
assert.deepEqual( before.outerHeight, placeholder.outerHeight( true ), "height preserved" );
} );
-QUnit.module( "transfer" );
+QUnit.module( "transfer", { afterEach: helper.moduleAfterEach } );
QUnit.test( "transfer() without callback", function( assert ) {
var ready = assert.async();
diff --git a/tests/unit/effects/scale.js b/tests/unit/effects/scale.js
index 44a59234b..c6b0c9aa3 100644
--- a/tests/unit/effects/scale.js
+++ b/tests/unit/effects/scale.js
@@ -1,10 +1,11 @@
define( [
"qunit",
"jquery",
+ "lib/helper",
"ui/effects/effect-scale"
-], function( QUnit, $ ) {
+], function( QUnit, $, helper ) {
-QUnit.module( "effect.scale: Scale" );
+QUnit.module( "effect.scale: Scale", { afterEach: helper.moduleAfterEach } );
function run( position, v, h, vo, ho ) {
var desc = "End Position Correct: " + position + " (" + v + "," + h + ") - origin: (" + vo + "," + ho + ")";