Merge "Change php extract() to explicit code"
[lhc/web/wiklou.git] / tests / phpunit / includes / content / JavaScriptContentTest.php
index a636e56..434e17c 100644 (file)
@@ -12,81 +12,81 @@ class JavaScriptContentTest extends TextContentTest {
        }
 
        public static function dataGetParserOutput() {
-               return array(
-                       array(
+               return [
+                       [
                                'MediaWiki:Test.js',
                                null,
                                "hello <world>\n",
                                "<pre class=\"mw-code mw-js\" dir=\"ltr\">\nhello &lt;world&gt;\n\n</pre>"
-                       ),
-                       array(
+                       ],
+                       [
                                'MediaWiki:Test.js',
                                null,
                                "hello(); // [[world]]\n",
                                "<pre class=\"mw-code mw-js\" dir=\"ltr\">\nhello(); // [[world]]\n\n</pre>",
-                               array(
-                                       'Links' => array(
-                                               array( 'World' => 0 )
-                                       )
-                               )
-                       ),
+                               [
+                                       'Links' => [
+                                               [ 'World' => 0 ]
+                                       ]
+                               ]
+                       ],
 
                        // TODO: more...?
-               );
+               ];
        }
 
        // XXX: Unused function
        public static function dataGetSection() {
-               return array(
-                       array( WikitextContentTest::$sections,
+               return [
+                       [ WikitextContentTest::$sections,
                                '0',
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                '2',
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                '8',
                                null
-                       ),
-               );
+                       ],
+               ];
        }
 
        // XXX: Unused function
        public static function dataReplaceSection() {
-               return array(
-                       array( WikitextContentTest::$sections,
+               return [
+                       [ WikitextContentTest::$sections,
                                '0',
                                'No more',
                                null,
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                '',
                                'No more',
                                null,
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                '2',
                                "== TEST ==\nmore fun",
                                null,
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                '8',
                                'No more',
                                null,
                                null
-                       ),
-                       array( WikitextContentTest::$sections,
+                       ],
+                       [ WikitextContentTest::$sections,
                                'new',
                                'No more',
                                'New',
                                null
-                       ),
-               );
+                       ],
+               ];
        }
 
        /**
@@ -101,141 +101,121 @@ class JavaScriptContentTest extends TextContentTest {
 
        // XXX: currently, preSaveTransform is applied to scripts. this may change or become optional.
        public static function dataPreSaveTransform() {
-               return array(
-                       array( 'hello this is ~~~',
+               return [
+                       [ 'hello this is ~~~',
                                "hello this is [[Special:Contributions/127.0.0.1|127.0.0.1]]",
-                       ),
-                       array( 'hello \'\'this\'\' is <nowiki>~~~</nowiki>',
+                       ],
+                       [ 'hello \'\'this\'\' is <nowiki>~~~</nowiki>',
                                'hello \'\'this\'\' is <nowiki>~~~</nowiki>',
-                       ),
-                       array( " Foo \n ",
+                       ],
+                       [ " Foo \n ",
                                " Foo",
-                       ),
-               );
+                       ],
+               ];
        }
 
        public static function dataPreloadTransform() {
-               return array(
-                       array(
+               return [
+                       [
                                'hello this is ~~~',
                                'hello this is ~~~',
-                       ),
-                       array(
+                       ],
+                       [
                                'hello \'\'this\'\' is <noinclude>foo</noinclude><includeonly>bar</includeonly>',
                                'hello \'\'this\'\' is <noinclude>foo</noinclude><includeonly>bar</includeonly>',
-                       ),
-               );
+                       ],
+               ];
        }
 
        public static function dataGetRedirectTarget() {
-               return array(
-                       array( '#REDIRECT [[Test]]',
+               return [
+                       [ '#REDIRECT [[Test]]',
                                null,
-                       ),
-                       array( '#REDIRECT Test',
+                       ],
+                       [ '#REDIRECT Test',
                                null,
-                       ),
-                       array( '* #REDIRECT [[Test]]',
+                       ],
+                       [ '* #REDIRECT [[Test]]',
                                null,
-                       ),
-               );
+                       ],
+               ];
        }
 
-       /**
-        * @todo Test needs database!
-        */
-       /*
-       public function getRedirectChain() {
-               $text = $this->getNativeData();
-               return Title::newFromRedirectArray( $text );
-       }
-       */
-
-       /**
-        * @todo Test needs database!
-        */
-       /*
-       public function getUltimateRedirectTarget() {
-               $text = $this->getNativeData();
-               return Title::newFromRedirectRecurse( $text );
-       }
-       */
-
        public static function dataIsCountable() {
-               return array(
-                       array( '',
+               return [
+                       [ '',
                                null,
                                'any',
                                true
-                       ),
-                       array( 'Foo',
+                       ],
+                       [ 'Foo',
                                null,
                                'any',
                                true
-                       ),
-                       array( 'Foo',
+                       ],
+                       [ 'Foo',
                                null,
                                'comma',
                                false
-                       ),
-                       array( 'Foo, bar',
+                       ],
+                       [ 'Foo, bar',
                                null,
                                'comma',
                                false
-                       ),
-                       array( 'Foo',
+                       ],
+                       [ 'Foo',
                                null,
                                'link',
                                false
-                       ),
-                       array( 'Foo [[bar]]',
+                       ],
+                       [ 'Foo [[bar]]',
                                null,
                                'link',
                                false
-                       ),
-                       array( 'Foo',
+                       ],
+                       [ 'Foo',
                                true,
                                'link',
                                false
-                       ),
-                       array( 'Foo [[bar]]',
+                       ],
+                       [ 'Foo [[bar]]',
                                false,
                                'link',
                                false
-                       ),
-                       array( '#REDIRECT [[bar]]',
+                       ],
+                       [ '#REDIRECT [[bar]]',
                                true,
                                'any',
                                true
-                       ),
-                       array( '#REDIRECT [[bar]]',
+                       ],
+                       [ '#REDIRECT [[bar]]',
                                true,
                                'comma',
                                false
-                       ),
-                       array( '#REDIRECT [[bar]]',
+                       ],
+                       [ '#REDIRECT [[bar]]',
                                true,
                                'link',
                                false
-                       ),
-               );
+                       ],
+               ];
        }
 
        public static function dataGetTextForSummary() {
-               return array(
-                       array( "hello\nworld.",
+               return [
+                       [ "hello\nworld.",
                                16,
                                'hello world.',
-                       ),
-                       array( 'hello world.',
+                       ],
+                       [ 'hello world.',
                                8,
                                'hello...',
-                       ),
-                       array( '[[hello world]].',
+                       ],
+                       [ '[[hello world]].',
                                8,
                                '[[hel...',
-                       ),
-               );
+                       ],
+               ];
        }
 
        /**
@@ -256,12 +236,12 @@ class JavaScriptContentTest extends TextContentTest {
         * @dataProvider provideUpdateRedirect
         */
        public function testUpdateRedirect( $oldText, $expectedText ) {
-               $this->setMwGlobals( array(
+               $this->setMwGlobals( [
                        'wgServer' => '//example.org',
                        'wgScriptPath' => '/w',
                        'wgScript' => '/w/index.php',
                        'wgResourceBasePath' => '/w',
-               ) );
+               ] );
                $target = Title::newFromText( "testUpdateRedirect_target" );
 
                $content = new JavaScriptContent( $oldText );
@@ -271,19 +251,19 @@ class JavaScriptContentTest extends TextContentTest {
        }
 
        public static function provideUpdateRedirect() {
-               return array(
-                       array(
+               return [
+                       [
                                '#REDIRECT [[Someplace]]',
                                '#REDIRECT [[Someplace]]',
-                       ),
+                       ],
 
                        // @codingStandardsIgnoreStart Generic.Files.LineLength
-                       array(
+                       [
                                '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=MediaWiki:MonoBook.js\u0026action=raw\u0026ctype=text/javascript");',
                                '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=TestUpdateRedirect_target\u0026action=raw\u0026ctype=text/javascript");'
-                       )
+                       ]
                        // @codingStandardsIgnoreEnd
-               );
+               ];
        }
 
        /**
@@ -305,24 +285,25 @@ class JavaScriptContentTest extends TextContentTest {
        }
 
        public static function dataEquals() {
-               return array(
-                       array( new JavaScriptContent( "hallo" ), null, false ),
-                       array( new JavaScriptContent( "hallo" ), new JavaScriptContent( "hallo" ), true ),
-                       array( new JavaScriptContent( "hallo" ), new CssContent( "hallo" ), false ),
-                       array( new JavaScriptContent( "hallo" ), new JavaScriptContent( "HALLO" ), false ),
-               );
+               return [
+                       [ new JavaScriptContent( "hallo" ), null, false ],
+                       [ new JavaScriptContent( "hallo" ), new JavaScriptContent( "hallo" ), true ],
+                       [ new JavaScriptContent( "hallo" ), new CssContent( "hallo" ), false ],
+                       [ new JavaScriptContent( "hallo" ), new JavaScriptContent( "HALLO" ), false ],
+               ];
        }
 
        /**
+        * @covers JavaScriptContent::getRedirectTarget
         * @dataProvider provideGetRedirectTarget
         */
        public function testGetRedirectTarget( $title, $text ) {
-               $this->setMwGlobals( array(
+               $this->setMwGlobals( [
                        'wgServer' => '//example.org',
                        'wgScriptPath' => '/w',
                        'wgScript' => '/w/index.php',
                        'wgResourceBasePath' => '/w',
-               ) );
+               ] );
                $content = new JavaScriptContent( $text );
                $target = $content->getRedirectTarget();
                $this->assertEquals( $title, $target ? $target->getPrefixedText() : null );
@@ -333,15 +314,30 @@ class JavaScriptContentTest extends TextContentTest {
         */
        public static function provideGetRedirectTarget() {
                // @codingStandardsIgnoreStart Generic.Files.LineLength
-               return array(
-                       array( 'MediaWiki:MonoBook.js', '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=MediaWiki:MonoBook.js\u0026action=raw\u0026ctype=text/javascript");' ),
-                       array( 'User:FooBar/common.js', '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=User:FooBar/common.js\u0026action=raw\u0026ctype=text/javascript");' ),
-                       array( 'Gadget:FooBaz.js', '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=Gadget:FooBaz.js\u0026action=raw\u0026ctype=text/javascript");' ),
+               return [
+                       [
+                               'MediaWiki:MonoBook.js',
+                               '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=MediaWiki:MonoBook.js\u0026action=raw\u0026ctype=text/javascript");'
+                       ],
+                       [
+                               'User:FooBar/common.js',
+                               '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=User:FooBar/common.js\u0026action=raw\u0026ctype=text/javascript");'
+                       ],
+                       [
+                               'Gadget:FooBaz.js',
+                               '/* #REDIRECT */mw.loader.load("//example.org/w/index.php?title=Gadget:FooBaz.js\u0026action=raw\u0026ctype=text/javascript");'
+                       ],
                        // No #REDIRECT comment
-                       array( null, 'mw.loader.load("//example.org/w/index.php?title=MediaWiki:NoRedirect.js\u0026action=raw\u0026ctype=text/javascript");' ),
+                       [
+                               null,
+                               'mw.loader.load("//example.org/w/index.php?title=MediaWiki:NoRedirect.js\u0026action=raw\u0026ctype=text/javascript");'
+                       ],
                        // Different domain
-                       array( null, '/* #REDIRECT */mw.loader.load("//example.com/w/index.php?title=MediaWiki:OtherWiki.js\u0026action=raw\u0026ctype=text/javascript");' ),
-               );
+                       [
+                               null,
+                               '/* #REDIRECT */mw.loader.load("//example.com/w/index.php?title=MediaWiki:OtherWiki.js\u0026action=raw\u0026ctype=text/javascript");'
+                       ],
+               ];
                // @codingStandardsIgnoreEnd
        }
 }