wiki.techinc.nl/tests/phpunit/MediaWikiLangTestCase.php
Fomafix c29c30d36b MediaWikiLangTestCase: Avoid global variable
* Use $this->getServiceContainer() instead of
  MediaWikiServices::getInstance().
* Get 'LanguageCode' from config instead of $wgLanguageCode.
* Use MediaWiki\MainConfigNames.
* Use consistent exception message.

Change-Id: I6d16e54280fd98293eb0e97f4a63f847409564af
2023-10-12 12:56:55 +00:00

29 lines
903 B
PHP

<?php
use MediaWiki\MainConfigNames;
/**
* Base class that store and restore the Language objects
*/
abstract class MediaWikiLangTestCase extends MediaWikiIntegrationTestCase {
/**
* The annotation causes this to be called immediately before setUp()
* @before
*/
final protected function mediaWikiLangSetUp(): void {
$services = $this->getServiceContainer();
$languageCode = $services->getMainConfig()->get( MainConfigNames::LanguageCode );
$contLanguageCode = $services->getContentLanguage()->getCode();
if ( $languageCode !== $contLanguageCode ) {
throw new RuntimeException( "Error in " . __METHOD__ . ': ' .
"\$wgLanguageCode ('$languageCode') is different from content language code " .
"('$contLanguageCode')" );
}
$this->setUserLang( 'en' );
// For mainpage to be 'Main Page'
$this->setContentLang( 'en' );
$services->getMessageCache()->disable();
}
}