composer: * mediawiki/mediawiki-codesniffer: 36.0.0 → 37.0.0 The following sniffs now pass and were enabled: * Generic.ControlStructures.InlineControlStructure * MediaWiki.PHPUnit.AssertCount.NotUsed npm: * svgo: 2.3.0 → 2.3.1 * https://npmjs.com/advisories/1754 (CVE-2021-33587) Change-Id: I2a9bbee2fecbf7259876d335f565ece4b3622426
44 lines
1.4 KiB
PHP
44 lines
1.4 KiB
PHP
<?php
|
|
|
|
use MediaWiki\Languages\LanguageConverterFactory;
|
|
use MediaWiki\MediaWikiServices;
|
|
|
|
/**
|
|
* @group Language
|
|
*/
|
|
class LanguageConverterIntegrationTest extends MediaWikiIntegrationTestCase {
|
|
|
|
/** @var LanguageConverterFactory */
|
|
private $factory;
|
|
|
|
protected function setUp(): void {
|
|
parent::setUp();
|
|
$this->factory = new LanguageConverterFactory( false, false, false, static function () {
|
|
$language = MediaWikiServices::getInstance()->getContentLanguage();
|
|
} );
|
|
}
|
|
|
|
/**
|
|
* Shorthand for getting a Language Converter for specific language's code
|
|
* @param string $code code of converter
|
|
* @return ILanguageConverter
|
|
*/
|
|
private function getLanguageConverter( $code ): ILanguageConverter {
|
|
$language = MediaWikiServices::getInstance()->getLanguageFactory()
|
|
->getLanguage( $code );
|
|
return $this->factory->getLanguageConverter( $language );
|
|
}
|
|
|
|
/**
|
|
* @covers LanguageConverter::hasVariant
|
|
*/
|
|
public function testHasVariant() {
|
|
// See LanguageSrTest::testHasVariant() for additional tests
|
|
$converterEn = $this->getLanguageConverter( 'en' );
|
|
$this->assertTrue( $converterEn->hasVariant( 'en' ), 'base is always a variant' );
|
|
$this->assertFalse( $converterEn->hasVariant( 'en-bogus' ), 'bogus en variant' );
|
|
|
|
$converterBogus = $this->getLanguageConverter( 'bogus' );
|
|
$this->assertTrue( $converterBogus->hasVariant( 'bogus' ), 'base is always a variant' );
|
|
}
|
|
}
|