From e7a10c70ae75c741992afdda60a433be205fd85e Mon Sep 17 00:00:00 2001 From: Michał Gołębiowski-Owczarek Date: Sat, 16 May 2020 09:16:24 +0200 Subject: 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 --- tests/unit/controlgroup/core.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'tests/unit/controlgroup/core.js') diff --git a/tests/unit/controlgroup/core.js b/tests/unit/controlgroup/core.js index 789eefc90..baccb3b16 100644 --- a/tests/unit/controlgroup/core.js +++ b/tests/unit/controlgroup/core.js @@ -1,14 +1,15 @@ define( [ "qunit", "jquery", + "lib/helper", "ui/widgets/controlgroup", "ui/widgets/checkboxradio", "ui/widgets/selectmenu", "ui/widgets/button", "ui/widgets/spinner" -], function( QUnit, $ ) { +], function( QUnit, $, helper ) { -QUnit.module( "Controlgroup: Core" ); +QUnit.module( "Controlgroup: Core", { afterEach: helper.moduleAfterEach } ); QUnit.test( "selectmenu: open/close corners", function( assert ) { assert.expect( 12 ); @@ -161,12 +162,12 @@ QUnit.test( "Single controlgroup button - vertical", function( assert ) { } ); QUnit.module( "Controlgroup: Non-empty class key", { - setup: function() { + beforeEach: function() { this.classKey = $.ui.selectmenu.prototype.options.classes[ "ui-selectmenu-button-closed" ]; $.ui.selectmenu.prototype.options.classes[ "ui-selectmenu-button-closed" ] = "something-custom"; }, - teardown: function() { + afterEach: function() { $.ui.selectmenu.prototype.options.classes[ "ui-selectmenu-button-closed" ] = this.classKey; } } ); -- cgit v1.2.3