Skip to content

Commit

Permalink
Merge ed08f7f into e1b5396
Browse files Browse the repository at this point in the history
  • Loading branch information
dmethvin committed Mar 25, 2016
2 parents e1b5396 + ed08f7f commit cf9d50b
Show file tree
Hide file tree
Showing 6 changed files with 59 additions and 0 deletions.
1 change: 1 addition & 0 deletions Gruntfile.js
Expand Up @@ -22,6 +22,7 @@ module.exports = function( grunt ) {
"src/version.js",
"src/migrate.js",
"src/core.js",
"src/ajax.js",
"src/css.js",
"src/effects.js",
"src/event.js",
Expand Down
18 changes: 18 additions & 0 deletions src/ajax.js
@@ -0,0 +1,18 @@

var oldAjax = jQuery.ajax;

jQuery.ajax = function( ) {
var jQXHR = oldAjax.apply( this, arguments );

// Be sure we got a jQXHR (e.g., not sync)
if ( jQXHR.promise ) {
migrateWarnProp( jQXHR, "success", jQXHR.done,
"jQXHR.success is deprecated and removed" );
migrateWarnProp( jQXHR, "error", jQXHR.fail,
"jQXHR.error is deprecated and removed" );
migrateWarnProp( jQXHR, "complete", jQXHR.always,
"jQXHR.complete is deprecated and removed" );
}

return jQXHR;
};
15 changes: 15 additions & 0 deletions src/migrate.js
Expand Up @@ -39,6 +39,21 @@ function migrateWarn( msg ) {
}
}

function migrateWarnProp( obj, prop, value, msg ) {
Object.defineProperty( obj, prop, {
configurable: true,
enumerable: true,
get: function() {
migrateWarn( msg );
return value;
},
set: function( newValue ) {
migrateWarn( msg );
value = newValue;
}
} );
}

if ( document.compatMode === "BackCompat" ) {

// JQuery has never supported or tested Quirks Mode
Expand Down
23 changes: 23 additions & 0 deletions test/ajax.js
@@ -0,0 +1,23 @@
module( "ajax" );

test( "jQuery.ajax() deprecations on jqXHR", function( assert ) {
assert.expect( 3 );

var done = assert.async();

expectWarning( ".success(), .error(), .compete() calls", 3, function() {

jQuery.ajax( "/not-found.404" )
.success( jQuery.noop )
.error( function( jQXHR ) {

// Local file errors returns 0, pretend it's a 404
assert.equal( jQXHR.status || 404, 404, "ajax error" );
} )
.complete( function() {
assert.ok( true, "ajax complete" );
done();
} );
} );

} );
1 change: 1 addition & 0 deletions test/index.html
Expand Up @@ -36,6 +36,7 @@
<!-- Unit test files -->
<script src="migrate.js"></script>
<script src="core.js"></script>
<script src="ajax.js"></script>
<script src="css.js"></script>
<script src="event.js"></script>
<script src="traversing.js"></script>
Expand Down
1 change: 1 addition & 0 deletions test/testinit.js
Expand Up @@ -22,6 +22,7 @@ TestManager = {
"version",
"migrate",
"core",
"ajax",
"css",
"effects",
"event",
Expand Down

0 comments on commit cf9d50b

Please sign in to comment.