Skip to content

Commit

Permalink
Event: Add basic unit tests for event aliases
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
dmethvin committed Nov 5, 2015
1 parent 493b0fd commit e05c63e
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions test/unit/event.js
Expand Up @@ -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 ) {
Expand Down

0 comments on commit e05c63e

Please sign in to comment.