From 83251861b6d58609d381106db80116ca57a20784 Mon Sep 17 00:00:00 2001 From: Fomafix Date: Sat, 13 Jan 2018 11:47:26 +0100 Subject: [PATCH] mediawiki.util.test: Set wgFragmentMode before testing getUrl The result of mw.util.getUrl() depends on wgFragmentMode. This change sets wgFragmentMode before testing mw.util.getUrl() and tests the modes 'legacy' and 'html5'. This change fixes failures on Special:JavaScriptTest when $wgFragmentMode = [ 'html5' ]; is set in LocalSettings.php. Change-Id: Ifc65faacfcddb7d1bb4b298a0940c8f0208a23d7 --- .../suites/resources/mediawiki/mediawiki.util.test.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js index ef894a9482..b8464e9907 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js @@ -248,14 +248,24 @@ href = util.getUrl( '#Fragment', { action: 'edit' } ); assert.equal( href, '/w/index.php?action=edit#Fragment', 'empty title with query string and fragment' ); + mw.config.set( 'wgFragmentMode', [ 'legacy' ] ); href = util.getUrl( 'Foo:Sandbox \xC4#Fragment \xC4', { action: 'edit' } ); assert.equal( href, '/w/index.php?title=Foo:Sandbox_%C3%84&action=edit#Fragment_.C3.84', 'title with query string, fragment, and special characters' ); + mw.config.set( 'wgFragmentMode', [ 'html5' ] ); + href = util.getUrl( 'Foo:Sandbox \xC4#Fragment \xC4', { action: 'edit' } ); + assert.equal( href, '/w/index.php?title=Foo:Sandbox_%C3%84&action=edit#Fragment_Ä', 'title with query string, fragment, and special characters' ); + href = util.getUrl( 'Foo:%23#Fragment', { action: 'edit' } ); assert.equal( href, '/w/index.php?title=Foo:%2523&action=edit#Fragment', 'title containing %23 (#), fragment, and a query string' ); + mw.config.set( 'wgFragmentMode', [ 'legacy' ] ); href = util.getUrl( '#+&=:;@$-_.!*/[]<>\'§', { action: 'edit' } ); assert.equal( href, '/w/index.php?action=edit#.2B.26.3D:.3B.40.24-_..21.2A.2F.5B.5D.3C.3E.27.C2.A7', 'fragment with various characters' ); + + mw.config.set( 'wgFragmentMode', [ 'html5' ] ); + href = util.getUrl( '#+&=:;@$-_.!*/[]<>\'§', { action: 'edit' } ); + assert.equal( href, '/w/index.php?action=edit#+&=:;@$-_.!*/[]<>\'§', 'fragment with various characters' ); } ); QUnit.test( 'wikiScript', function ( assert ) { -- 2.20.1