Merge "Unbreak creating extension tables from the web installer"
[lhc/web/wiklou.git] / tests / phpunit / includes / api / ApiModuleManagerTest.php
index dab81e1..b01b90e 100644 (file)
@@ -20,30 +20,30 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
        }
 
        public function addModuleProvider() {
-               return array(
-                       'plain class' => array(
+               return [
+                       'plain class' => [
                                'login',
                                'action',
-                               'ApiLogin',
+                               ApiLogin::class,
                                null,
-                       ),
+                       ],
 
-                       'with factory' => array(
+                       'with factory' => [
                                'login',
                                'action',
-                               'ApiLogin',
-                               array( $this, 'newApiLogin' ),
-                       ),
+                               ApiLogin::class,
+                               [ $this, 'newApiLogin' ],
+                       ],
 
-                       'with closure' => array(
+                       'with closure' => [
                                'logout',
                                'action',
-                               'ApiLogout',
+                               ApiLogout::class,
                                function ( ApiMain $main, $action ) {
                                        return new ApiLogout( $main, $action );
                                },
-                       ),
-               );
+                       ],
+               ];
        }
 
        /**
@@ -58,36 +58,36 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
        }
 
        public function addModulesProvider() {
-               return array(
-                       'empty' => array(
-                               array(),
+               return [
+                       'empty' => [
+                               [],
                                'action',
-                       ),
+                       ],
 
-                       'simple' => array(
-                               array(
-                                       'login' => 'ApiLogin',
-                                       'logout' => 'ApiLogout',
-                               ),
+                       'simple' => [
+                               [
+                                       'login' => ApiLogin::class,
+                                       'logout' => ApiLogout::class,
+                               ],
                                'action',
-                       ),
-
-                       'with factories' => array(
-                               array(
-                                       'login' => array(
-                                               'class' => 'ApiLogin',
-                                               'factory' => array( $this, 'newApiLogin' ),
-                                       ),
-                                       'logout' => array(
-                                               'class' => 'ApiLogout',
+                       ],
+
+                       'with factories' => [
+                               [
+                                       'login' => [
+                                               'class' => ApiLogin::class,
+                                               'factory' => [ $this, 'newApiLogin' ],
+                                       ],
+                                       'logout' => [
+                                               'class' => ApiLogout::class,
                                                'factory' => function ( ApiMain $main, $action ) {
                                                        return new ApiLogout( $main, $action );
                                                },
-                                       ),
-                               ),
+                                       ],
+                               ],
                                'action',
-                       ),
-               );
+                       ],
+               ];
        }
 
        /**
@@ -106,46 +106,46 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
        }
 
        public function getModuleProvider() {
-               $modules = array(
-                       'feedrecentchanges' => 'ApiFeedRecentChanges',
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'login' => array(
-                               'class' => 'ApiLogin',
-                               'factory' => array( $this, 'newApiLogin' ),
-                       ),
-                       'logout' => array(
-                               'class' => 'ApiLogout',
+               $modules = [
+                       'feedrecentchanges' => ApiFeedRecentChanges::class,
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'login' => [
+                               'class' => ApiLogin::class,
+                               'factory' => [ $this, 'newApiLogin' ],
+                       ],
+                       'logout' => [
+                               'class' => ApiLogout::class,
                                'factory' => function ( ApiMain $main, $action ) {
                                        return new ApiLogout( $main, $action );
                                },
-                       ),
-               );
+                       ],
+               ];
 
-               return array(
-                       'legacy entry' => array(
+               return [
+                       'legacy entry' => [
                                $modules,
                                'feedrecentchanges',
-                               'ApiFeedRecentChanges',
-                       ),
+                               ApiFeedRecentChanges::class,
+                       ],
 
-                       'just a class' => array(
+                       'just a class' => [
                                $modules,
                                'feedcontributions',
-                               'ApiFeedContributions',
-                       ),
+                               ApiFeedContributions::class,
+                       ],
 
-                       'with factory' => array(
+                       'with factory' => [
                                $modules,
                                'login',
-                               'ApiLogin',
-                       ),
+                               ApiLogin::class,
+                       ],
 
-                       'with closure' => array(
+                       'with closure' => [
                                $modules,
                                'logout',
-                               'ApiLogout',
-                       ),
-               );
+                               ApiLogout::class,
+                       ],
+               ];
        }
 
        /**
@@ -177,10 +177,10 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
         * @covers ApiModuleManager::getModule
         */
        public function testGetModule_null() {
-               $modules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $modules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $modules, 'test' );
@@ -193,15 +193,15 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
         * @covers ApiModuleManager::getNames
         */
        public function testGetNames() {
-               $fooModules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $fooModules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
-               $barModules = array(
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'feedrecentchanges' => array( 'class' => 'ApiFeedRecentChanges' ),
-               );
+               $barModules = [
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'feedrecentchanges' => [ 'class' => ApiFeedRecentChanges::class ],
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $fooModules, 'foo' );
@@ -219,15 +219,15 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
         * @covers ApiModuleManager::getNamesWithClasses
         */
        public function testGetNamesWithClasses() {
-               $fooModules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $fooModules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
-               $barModules = array(
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'feedrecentchanges' => array( 'class' => 'ApiFeedRecentChanges' ),
-               );
+               $barModules = [
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'feedrecentchanges' => [ 'class' => ApiFeedRecentChanges::class ],
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $fooModules, 'foo' );
@@ -237,10 +237,10 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
                $this->assertArrayEquals( $fooModules, $fooNamesWithClasses );
 
                $allNamesWithClasses = $moduleManager->getNamesWithClasses();
-               $allModules = array_merge( $fooModules, array(
-                       'feedcontributions' => 'ApiFeedContributions',
-                       'feedrecentchanges' => 'ApiFeedRecentChanges',
-               ) );
+               $allModules = array_merge( $fooModules, [
+                       'feedcontributions' => ApiFeedContributions::class,
+                       'feedrecentchanges' => ApiFeedRecentChanges::class,
+               ] );
                $this->assertArrayEquals( $allModules, $allNamesWithClasses );
        }
 
@@ -248,15 +248,15 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
         * @covers ApiModuleManager::getModuleGroup
         */
        public function testGetModuleGroup() {
-               $fooModules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $fooModules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
-               $barModules = array(
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'feedrecentchanges' => array( 'class' => 'ApiFeedRecentChanges' ),
-               );
+               $barModules = [
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'feedrecentchanges' => [ 'class' => ApiFeedRecentChanges::class ],
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $fooModules, 'foo' );
@@ -271,48 +271,60 @@ class ApiModuleManagerTest extends MediaWikiTestCase {
         * @covers ApiModuleManager::getGroups
         */
        public function testGetGroups() {
-               $fooModules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $fooModules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
-               $barModules = array(
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'feedrecentchanges' => array( 'class' => 'ApiFeedRecentChanges' ),
-               );
+               $barModules = [
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'feedrecentchanges' => [ 'class' => ApiFeedRecentChanges::class ],
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $fooModules, 'foo' );
                $moduleManager->addModules( $barModules, 'bar' );
 
                $groups = $moduleManager->getGroups();
-               $this->assertArrayEquals( array( 'foo', 'bar' ), $groups );
+               $this->assertArrayEquals( [ 'foo', 'bar' ], $groups );
        }
 
        /**
         * @covers ApiModuleManager::getClassName
         */
        public function testGetClassName() {
-               $fooModules = array(
-                       'login' => 'ApiLogin',
-                       'logout' => 'ApiLogout',
-               );
+               $fooModules = [
+                       'login' => ApiLogin::class,
+                       'logout' => ApiLogout::class,
+               ];
 
-               $barModules = array(
-                       'feedcontributions' => array( 'class' => 'ApiFeedContributions' ),
-                       'feedrecentchanges' => array( 'class' => 'ApiFeedRecentChanges' ),
-               );
+               $barModules = [
+                       'feedcontributions' => [ 'class' => ApiFeedContributions::class ],
+                       'feedrecentchanges' => [ 'class' => ApiFeedRecentChanges::class ],
+               ];
 
                $moduleManager = $this->getModuleManager();
                $moduleManager->addModules( $fooModules, 'foo' );
                $moduleManager->addModules( $barModules, 'bar' );
 
-               $this->assertEquals( 'ApiLogin', $moduleManager->getClassName( 'login' ) );
-               $this->assertEquals( 'ApiLogout', $moduleManager->getClassName( 'logout' ) );
-               $this->assertEquals( 'ApiFeedContributions', $moduleManager->getClassName( 'feedcontributions' ) );
-               $this->assertEquals( 'ApiFeedRecentChanges', $moduleManager->getClassName( 'feedrecentchanges' ) );
-               $this->assertFalse( $moduleManager->getClassName( 'nonexistentmodule' ) );
+               $this->assertEquals(
+                       ApiLogin::class,
+                       $moduleManager->getClassName( 'login' )
+               );
+               $this->assertEquals(
+                       ApiLogout::class,
+                       $moduleManager->getClassName( 'logout' )
+               );
+               $this->assertEquals(
+                       ApiFeedContributions::class,
+                       $moduleManager->getClassName( 'feedcontributions' )
+               );
+               $this->assertEquals(
+                       ApiFeedRecentChanges::class,
+                       $moduleManager->getClassName( 'feedrecentchanges' )
+               );
+               $this->assertFalse(
+                       $moduleManager->getClassName( 'nonexistentmodule' )
+               );
        }
-
-
 }