]> source.dussan.org Git - jquery.git/commitdiff
Event: Add basic unit tests for event aliases
authorDave Methvin <dave.methvin@gmail.com>
Wed, 4 Nov 2015 18:27:39 +0000 (13:27 -0500)
committerDave Methvin <dave.methvin@gmail.com>
Thu, 5 Nov 2015 19:14:36 +0000 (14:14 -0500)
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.

test/unit/event.js

index 26d972a5b5f45ba8622333931d7fc73cab8ca6a8..e82db243f14023bd66e0c4ac8144363720e752e7 100644 (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 ) {