mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
e7a10c70ae
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
46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
define( [
|
|
"qunit",
|
|
"jquery",
|
|
"lib/helper",
|
|
"ui/widgets/datepicker"
|
|
], function( QUnit, $, helper ) {
|
|
|
|
return $.extend( helper, {
|
|
addMonths: function( date, offset ) {
|
|
var maxDay = 32 - new Date( date.getFullYear(), date.getMonth() + offset, 32 ).getDate();
|
|
date.setDate( Math.min( date.getDate(), maxDay ) );
|
|
date.setMonth( date.getMonth() + offset );
|
|
return date;
|
|
},
|
|
|
|
equalsDate: function( assert, d1, d2, message ) {
|
|
if ( !d1 || !d2 ) {
|
|
assert.ok( false, message + " - missing date" );
|
|
return;
|
|
}
|
|
d1 = new Date( d1.getFullYear(), d1.getMonth(), d1.getDate() );
|
|
d2 = new Date( d2.getFullYear(), d2.getMonth(), d2.getDate() );
|
|
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 || {} ) );
|
|
},
|
|
|
|
initNewInput: function( options ) {
|
|
var id = $( "<input>" ).appendTo( "#qunit-fixture" );
|
|
return this.init( id, options );
|
|
},
|
|
|
|
PROP_NAME: "datepicker"
|
|
} );
|
|
|
|
} );
|