diff options
Diffstat (limited to 'tests/qunit/suites/resources/mediawiki.api/mediawiki.api.category.test.js')
-rw-r--r-- | tests/qunit/suites/resources/mediawiki.api/mediawiki.api.category.test.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.category.test.js b/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.category.test.js new file mode 100644 index 00000000..a0c7daf1 --- /dev/null +++ b/tests/qunit/suites/resources/mediawiki.api/mediawiki.api.category.test.js @@ -0,0 +1,30 @@ +( function ( mw ) { + QUnit.module( 'mediawiki.api.category', QUnit.newMwEnvironment( { + setup: function () { + this.server = this.sandbox.useFakeServer(); + } + } ) ); + + QUnit.test( '.getCategoriesByPrefix()', function ( assert ) { + QUnit.expect( 1 ); + + var api = new mw.Api(); + + api.getCategoriesByPrefix( 'Foo' ).done( function ( matches ) { + assert.deepEqual( + matches, + [ 'Food', 'Fool Supermarine S.6', 'Fools' ] + ); + } ); + + this.server.respond( function ( req ) { + req.respond( 200, { 'Content-Type': 'application/json' }, + '{ "query": { "allpages": [ ' + + '{ "title": "Category:Food" },' + + '{ "title": "Category:Fool Supermarine S.6" },' + + '{ "title": "Category:Fools" }' + + '] } }' + ); + } ); + } ); +}( mediaWiki ) ); |