diff options
author | Michał Gołębiowski-Owczarek <m.goleb@gmail.com> | 2020-05-16 09:16:24 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-16 09:16:24 +0200 |
commit | e7a10c70ae75c741992afdda60a433be205fd85e (patch) | |
tree | 7c9f0d717f944107930608316ed346fbdf5f12c5 /tests/unit/datepicker | |
parent | f4ef03e57edd7e51cb134e902679c7bddc3daaee (diff) | |
download | jquery-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/datepicker')
-rw-r--r-- | tests/unit/datepicker/core.js | 6 | ||||
-rw-r--r-- | tests/unit/datepicker/events.js | 4 | ||||
-rw-r--r-- | tests/unit/datepicker/helper.js | 6 | ||||
-rw-r--r-- | tests/unit/datepicker/methods.js | 4 | ||||
-rw-r--r-- | tests/unit/datepicker/options.js | 4 |
5 files changed, 19 insertions, 5 deletions
diff --git a/tests/unit/datepicker/core.js b/tests/unit/datepicker/core.js index 2cc89cd21..2c4b77402 100644 --- a/tests/unit/datepicker/core.js +++ b/tests/unit/datepicker/core.js @@ -2,15 +2,17 @@ define( [ "qunit", "jquery", "lib/common", + "lib/helper", "./helper", "ui/widgets/datepicker", "ui/i18n/datepicker-he" -], function( QUnit, $, common, testHelper ) { +], function( QUnit, $, common, helper, testHelper ) { QUnit.module( "datepicker: core", { beforeEach: function() { $( "body" ).trigger( "focus" ); - } + }, + afterEach: helper.moduleAfterEach } ); common.testJshint( "widgets/datepicker" ); diff --git a/tests/unit/datepicker/events.js b/tests/unit/datepicker/events.js index 941822ef8..44064ee21 100644 --- a/tests/unit/datepicker/events.js +++ b/tests/unit/datepicker/events.js @@ -5,7 +5,9 @@ define( [ "ui/widgets/datepicker" ], function( QUnit, $, testHelper ) { -QUnit.module( "datepicker: events" ); +var beforeAfterEach = testHelper.beforeAfterEach; + +QUnit.module( "datepicker: events", beforeAfterEach() ); var selectedThis = null, selectedDate = null, diff --git a/tests/unit/datepicker/helper.js b/tests/unit/datepicker/helper.js index 7fd149bf1..85485ddf4 100644 --- a/tests/unit/datepicker/helper.js +++ b/tests/unit/datepicker/helper.js @@ -23,6 +23,12 @@ return $.extend( helper, { assert.equal( d1.toString(), d2.toString(), message ); }, + beforeAfterEach: function() { + return { + afterEach: helper.moduleAfterEach + }; + }, + init: function( id, options ) { $.datepicker.setDefaults( $.datepicker.regional[ "" ] ); return $( id ).datepicker( $.extend( { showAnim: "" }, options || {} ) ); diff --git a/tests/unit/datepicker/methods.js b/tests/unit/datepicker/methods.js index 8729c5606..fed04ccdd 100644 --- a/tests/unit/datepicker/methods.js +++ b/tests/unit/datepicker/methods.js @@ -5,7 +5,9 @@ define( [ "ui/widgets/datepicker" ], function( QUnit, $, testHelper ) { -QUnit.module( "datepicker: methods" ); +var beforeAfterEach = testHelper.beforeAfterEach; + +QUnit.module( "datepicker: methods", beforeAfterEach() ); QUnit.test( "destroy", function( assert ) { assert.expect( 35 ); diff --git a/tests/unit/datepicker/options.js b/tests/unit/datepicker/options.js index 7711e7412..d70220955 100644 --- a/tests/unit/datepicker/options.js +++ b/tests/unit/datepicker/options.js @@ -9,7 +9,9 @@ define( [ "ui/ie" ], function( QUnit, $, testHelper ) { -QUnit.module( "datepicker: options" ); +var beforeAfterEach = testHelper.beforeAfterEach; + +QUnit.module( "datepicker: options", beforeAfterEach() ); QUnit.test( "setDefaults", function( assert ) { assert.expect( 3 ); |