Matthias Mullie has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/327702 )
Change subject: Add test for api deferred rejection of errorformat!=bc ...................................................................... Add test for api deferred rejection of errorformat!=bc Change-Id: Ia4e1d575e07df690919d63502f9fedffff7be0a3 --- M resources/src/mediawiki/api.js M tests/qunit/suites/resources/mediawiki.api/mediawiki.api.test.js 2 files changed, 17 insertions(+), 1 deletion(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core refs/changes/02/327702/1 diff --git a/resources/src/mediawiki/api.js b/resources/src/mediawiki/api.js index b9db059..a174f58 100644 --- a/resources/src/mediawiki/api.js +++ b/resources/src/mediawiki/api.js @@ -261,9 +261,11 @@ jqXHR ); } else if ( result.error ) { + // errorformat=bc code = result.error.code === undefined ? 'unknown' : result.error.code; apiDeferred.reject( code, result, result, jqXHR ); } else if ( result.errors ) { + // errorformat!=bc code = result.errors[ 0 ].code === undefined ? 'unknown' : result.errors[ 0 ].code; apiDeferred.reject( code, result, result, jqXHR ); } else { diff --git a/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.test.js b/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.test.js index 3a959a3..6a00ac9 100644 --- a/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.test.js +++ b/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.test.js @@ -44,7 +44,7 @@ } ); } ); - QUnit.test( 'API error', function ( assert ) { + QUnit.test( 'API error errorformat=bc', function ( assert ) { var api = new mw.Api(); this.server.respond( [ 200, { 'Content-Type': 'application/json' }, @@ -58,6 +58,20 @@ .always( assert.async() ); } ); + QUnit.test( 'API error errorformat!=bc', function ( assert ) { + var api = new mw.Api(); + + this.server.respond( [ 200, { 'Content-Type': 'application/json' }, + '{ "errors": [ { "code": "unknown_action", "key": "unknown-error", "params": [] } ] }' + ] ); + + api.get( { action: 'doesntexist' } ) + .fail( function ( errorCode ) { + assert.equal( errorCode, 'unknown_action', 'API error should reject the deferred' ); + } ) + .always( assert.async() ); + } ); + QUnit.test( 'FormData support', function ( assert ) { var api = new mw.Api(); -- To view, visit https://gerrit.wikimedia.org/r/327702 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia4e1d575e07df690919d63502f9fedffff7be0a3 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Matthias Mullie <mmul...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits