Event: Add basic unit tests for event aliases

Fixes gh-2302
Closes gh-2687

At the moment it's not possible to run the full event unit tests without aliases
so this was just tested with a custom build by running this one test.
This commit is contained in:
Dave Methvin
2015-11-04 13:27:39 -05:00
parent 493b0fd7f5
commit e05c63e17a

View File

@@ -2843,6 +2843,24 @@ QUnit.test( "originalEvent property for Chrome, Safari, Fx & Edge of simulated e
jQuery( "#donor-input" ).trigger( "focus" );
} );
QUnit[ jQuery.fn.click ? "test" : "skip" ]( "Event aliases", function( assert ) {
// Explicitly skipping focus/blur events due to their flakiness
var $elem = jQuery( "<div />" ).appendTo( "#qunit-fixture" ),
aliases = ( "resize scroll click dblclick mousedown mouseup " +
"mousemove mouseover mouseout mouseenter mouseleave change " +
"select submit keydown keypress keyup contextmenu" ).split( " " );
assert.expect( aliases.length );
jQuery.each( aliases, function( i, name ) {
// e.g. $(elem).click(...).click();
$elem[ name ]( function( event ) {
assert.equal( event.type, name, "triggered " + name );
} )[ name ]().off( name );
} );
} );
// These tests are unreliable in Firefox
if ( !( /firefox/i.test( window.navigator.userAgent ) ) ) {
QUnit.test( "Check order of focusin/focusout events", function( assert ) {