X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=tests%2Fphpunit%2Fincludes%2Finterwiki%2FClassicInterwikiLookupTest.php;h=fd3b0b856a10dddecc850686ef4ed649d3af5928;hp=db6d00295c1c1c01114462245f29bb7d01b84b55;hb=e7720b8f8e09287384ddee271641d1b1721318bb;hpb=939199bcea28a3b13c49c0f808d11d415660b924 diff --git a/tests/phpunit/includes/interwiki/ClassicInterwikiLookupTest.php b/tests/phpunit/includes/interwiki/ClassicInterwikiLookupTest.php index db6d00295c..fd3b0b856a 100644 --- a/tests/phpunit/includes/interwiki/ClassicInterwikiLookupTest.php +++ b/tests/phpunit/includes/interwiki/ClassicInterwikiLookupTest.php @@ -39,7 +39,7 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { $lookup = new \MediaWiki\Interwiki\ClassicInterwikiLookup( Language::factory( 'en' ), WANObjectCache::newEmpty(), - 60*60, + 60 * 60, false, 3, 'en' @@ -133,18 +133,18 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { // NOTE: CDB setup is expensive, so we only do // it once and run all the tests in one go. - $dewiki = [ - 'iw_prefix' => 'de', - 'iw_url' => 'http://de.wikipedia.org/wiki/', - 'iw_local' => 1 - ]; - $zzwiki = [ 'iw_prefix' => 'zz', 'iw_url' => 'http://zzwiki.org/wiki/', 'iw_local' => 0 ]; + $dewiki = [ + 'iw_prefix' => 'de', + 'iw_url' => 'http://de.wikipedia.org/wiki/', + 'iw_local' => 1 + ]; + $cdbFile = $this->populateCDB( 'en', [ $dewiki ], @@ -153,14 +153,14 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { $lookup = new \MediaWiki\Interwiki\ClassicInterwikiLookup( Language::factory( 'en' ), WANObjectCache::newEmpty(), - 60*60, + 60 * 60, $cdbFile, 3, 'en' ); $this->assertEquals( - [ $dewiki, $zzwiki ], + [ $zzwiki, $dewiki ], $lookup->getAllPrefixes(), 'getAllPrefixes()' ); @@ -185,17 +185,16 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { } public function testArrayStorage() { - $dewiki = [ - 'iw_prefix' => 'de', - 'iw_url' => 'http://de.wikipedia.org/wiki/', - 'iw_local' => 1 - ]; - $zzwiki = [ 'iw_prefix' => 'zz', 'iw_url' => 'http://zzwiki.org/wiki/', 'iw_local' => 0 ]; + $dewiki = [ + 'iw_prefix' => 'de', + 'iw_url' => 'http://de.wikipedia.org/wiki/', + 'iw_local' => 1 + ]; $hash = $this->populateHash( 'en', @@ -205,14 +204,14 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { $lookup = new \MediaWiki\Interwiki\ClassicInterwikiLookup( Language::factory( 'en' ), WANObjectCache::newEmpty(), - 60*60, + 60 * 60, $hash, 3, 'en' ); $this->assertEquals( - [ $dewiki, $zzwiki ], + [ $zzwiki, $dewiki ], $lookup->getAllPrefixes(), 'getAllPrefixes()' ); @@ -233,4 +232,42 @@ class ClassicInterwikiLookupTest extends MediaWikiTestCase { $this->assertSame( false, $interwiki->isLocal(), 'isLocal' ); } + public function testGetAllPrefixes() { + $zz = [ + 'iw_prefix' => 'zz', + 'iw_url' => 'https://azz.example.org/', + 'iw_local' => 1 + ]; + $de = [ + 'iw_prefix' => 'de', + 'iw_url' => 'https://de.example.org/', + 'iw_local' => 1 + ]; + $azz = [ + 'iw_prefix' => 'azz', + 'iw_url' => 'https://azz.example.org/', + 'iw_local' => 1 + ]; + + $hash = $this->populateHash( + 'en', + [], + [ $zz, $de, $azz ] + ); + $lookup = new \MediaWiki\Interwiki\ClassicInterwikiLookup( + Language::factory( 'en' ), + WANObjectCache::newEmpty(), + 60 * 60, + $hash, + 3, + 'en' + ); + + $this->assertEquals( + [ $zz, $de, $azz ], + $lookup->getAllPrefixes(), + 'getAllPrefixes() - preserves order' + ); + } + }