From: Kunal Mehta Date: Mon, 3 Jun 2019 00:55:00 +0000 (-0400) Subject: Remove usage of deprecated SkinFactory::getDefaultInstance() X-Git-Tag: 1.34.0-rc.0~1538^2 X-Git-Url: http://git.cyclocoop.org/%7B%7B%20url_for%28%27admin_vote_del%27%2C%20idvote=vote.voteid%29%20%7D%7D?a=commitdiff_plain;h=01541db36b01f3b9fdc77b5abd4c700ab5673811;p=lhc%2Fweb%2Fwiklou.git Remove usage of deprecated SkinFactory::getDefaultInstance() Change-Id: I3bd50f8ca5baabd34dbc0e3bbc2f97e94650a17a --- diff --git a/includes/api/ApiFormatBase.php b/includes/api/ApiFormatBase.php index bff9fd0095..17a9d73ba4 100644 --- a/includes/api/ApiFormatBase.php +++ b/includes/api/ApiFormatBase.php @@ -20,6 +20,8 @@ * @file */ +use MediaWiki\MediaWikiServices; + /** * This is the abstract base class for API formatters. * @@ -73,7 +75,7 @@ abstract class ApiFormatBase extends ApiBase { } elseif ( $this->getIsHtml() ) { return 'api-result.html'; } else { - $exts = MediaWiki\MediaWikiServices::getInstance()->getMimeAnalyzer() + $exts = MediaWikiServices::getInstance()->getMimeAnalyzer() ->getExtensionsForType( $this->getMimeType() ); $ext = $exts ? strtok( $exts, ' ' ) : strtolower( $this->mFormat ); return "api-result.$ext"; @@ -245,7 +247,8 @@ abstract class ApiFormatBase extends ApiBase { $result = $this->getBuffer(); $context = new DerivativeContext( $this->getMain() ); - $context->setSkin( SkinFactory::getDefaultInstance()->makeSkin( 'apioutput' ) ); + $skinFactory = MediaWikiServices::getInstance()->getSkinFactory(); + $context->setSkin( $skinFactory->makeSkin( 'apioutput' ) ); $context->setTitle( SpecialPage::getTitleFor( 'ApiHelp' ) ); $out = new OutputPage( $context ); $context->setOutput( $out ); diff --git a/includes/api/ApiHelp.php b/includes/api/ApiHelp.php index 78efe4191b..cc96f907a3 100644 --- a/includes/api/ApiHelp.php +++ b/includes/api/ApiHelp.php @@ -40,7 +40,8 @@ class ApiHelp extends ApiBase { // Get the help $context = new DerivativeContext( $this->getMain()->getContext() ); - $context->setSkin( SkinFactory::getDefaultInstance()->makeSkin( 'apioutput' ) ); + $skinFactory = MediaWikiServices::getInstance()->getSkinFactory(); + $context->setSkin( $skinFactory->makeSkin( 'apioutput' ) ); $context->setLanguage( $this->getMain()->getLanguage() ); $context->setTitle( SpecialPage::getTitleFor( 'ApiHelp' ) ); $out = new OutputPage( $context ); diff --git a/includes/skins/SkinFallbackTemplate.php b/includes/skins/SkinFallbackTemplate.php index bd02fa325d..2f70c8d123 100644 --- a/includes/skins/SkinFallbackTemplate.php +++ b/includes/skins/SkinFallbackTemplate.php @@ -9,6 +9,8 @@ * @file */ +use MediaWiki\MediaWikiServices; + /** * BaseTemplate class for the fallback skin */ @@ -41,7 +43,8 @@ class SkinFallbackTemplate extends BaseTemplate { private function buildHelpfulInformationMessage() { $defaultSkin = $this->config->get( 'DefaultSkin' ); $installedSkins = $this->findInstalledSkins(); - $enabledSkins = SkinFactory::getDefaultInstance()->getSkinNames(); + $skinFactory = MediaWikiServices::getInstance()->getSkinFactory(); + $enabledSkins = $skinFactory->getSkinNames(); $enabledSkins = array_change_key_case( $enabledSkins, CASE_LOWER ); if ( $installedSkins ) { diff --git a/maintenance/Maintenance.php b/maintenance/Maintenance.php index c88a1a0204..44ce9a5d18 100644 --- a/maintenance/Maintenance.php +++ b/maintenance/Maintenance.php @@ -358,7 +358,7 @@ abstract class Maintenance { wfDeprecated( __METHOD__ . ' without an $argId', '1.33' ); } - return $this->hasArg( $argId ) ? $this->mArgs[$argId] : $default; + return $this->mArgs[$argId] ?? $default; } /** diff --git a/tests/phpunit/includes/OutputPageTest.php b/tests/phpunit/includes/OutputPageTest.php index ebd9f1d068..1272b01448 100644 --- a/tests/phpunit/includes/OutputPageTest.php +++ b/tests/phpunit/includes/OutputPageTest.php @@ -1,5 +1,6 @@ getMethod( 'makeResourceLoaderLink' ); $method->setAccessible( true ); $ctx = new RequestContext(); - $ctx->setSkin( SkinFactory::getDefaultInstance()->makeSkin( 'fallback' ) ); + $skinFactory = MediaWikiServices::getInstance()->getSkinFactory(); + $ctx->setSkin( $skinFactory->makeSkin( 'fallback' ) ); $ctx->setLanguage( 'en' ); $out = new OutputPage( $ctx ); $nonce = $class->getProperty( 'CSPNonce' ); @@ -2775,7 +2777,8 @@ class OutputPageTest extends MediaWikiTestCase { // Set up stubs $ctx = new RequestContext(); - $ctx->setSkin( SkinFactory::getDefaultInstance()->makeSkin( 'fallback' ) ); + $skinFactory = MediaWikiServices::getInstance()->getSkinFactory(); + $ctx->setSkin( $skinFactory->makeSkin( 'fallback' ) ); $ctx->setLanguage( 'en' ); $op = $this->getMockBuilder( OutputPage::class ) ->setConstructorArgs( [ $ctx ] ) diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderFileModuleTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderFileModuleTest.php index 0a4cf1e108..fbef12ea36 100644 --- a/tests/phpunit/includes/resourceloader/ResourceLoaderFileModuleTest.php +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderFileModuleTest.php @@ -9,14 +9,16 @@ class ResourceLoaderFileModuleTest extends ResourceLoaderTestCase { protected function setUp() { parent::setUp(); + $skinFactory = new SkinFactory(); // The return value of the closure shouldn't matter since this test should // never call it - SkinFactory::getDefaultInstance()->register( + $skinFactory->register( 'fakeskin', 'FakeSkin', function () { } ); + $this->setService( 'SkinFactory', $skinFactory ); } private static function getModules() { diff --git a/tests/phpunit/includes/resourceloader/ResourceLoaderOOUIImageModuleTest.php b/tests/phpunit/includes/resourceloader/ResourceLoaderOOUIImageModuleTest.php index 30e9f300c1..ff09660faa 100644 --- a/tests/phpunit/includes/resourceloader/ResourceLoaderOOUIImageModuleTest.php +++ b/tests/phpunit/includes/resourceloader/ResourceLoaderOOUIImageModuleTest.php @@ -16,12 +16,15 @@ class ResourceLoaderOOUIImageModuleTest extends ResourceLoaderTestCase { ] ); // Pretend that 'fakemonobook' is a real skin using the Apex theme - SkinFactory::getDefaultInstance()->register( + $skinFactory = new SkinFactory(); + $skinFactory->register( 'fakemonobook', 'FakeMonoBook', function () { } ); + $this->setService( 'SkinFactory', $skinFactory ); + $r = new ReflectionMethod( ExtensionRegistry::class, 'exportExtractedData' ); $r->setAccessible( true ); $r->invoke( ExtensionRegistry::getInstance(), [