wiki.techinc.nl/tests/phpunit/includes/page/ArticleTablesTest.php
Kunal Mehta 6e9b4f0e9c Convert all array() syntax to []
Per wikitech-l consensus:
 https://lists.wikimedia.org/pipermail/wikitech-l/2016-February/084821.html

Notes:
* Disabled CallTimePassByReference due to false positives (T127163)

Change-Id: I2c8ce713ce6600a0bb7bf67537c87044c7a45c4b
2016-02-17 01:33:00 -08:00

53 lines
1.5 KiB
PHP

<?php
/**
* @group Database
*/
class ArticleTablesTest extends MediaWikiLangTestCase {
/**
* Make sure that bug 14404 doesn't strike again. We don't want
* templatelinks based on the user language when {{int:}} is used, only the
* content language.
*
* @covers Title::getTemplateLinksFrom
* @covers Title::getLinksFrom
*/
public function testTemplatelinksUsesContentLanguage() {
$title = Title::newFromText( 'Bug 14404' );
$page = WikiPage::factory( $title );
$user = new User();
$user->mRights = [ 'createpage', 'edit', 'purge' ];
$this->setMwGlobals( 'wgLanguageCode', 'es' );
$this->setMwGlobals( 'wgContLang', Language::factory( 'es' ) );
$this->setMwGlobals( 'wgLang', Language::factory( 'fr' ) );
$page->doEditContent(
new WikitextContent( '{{:{{int:history}}}}' ),
'Test code for bug 14404',
0,
false,
$user
);
$templates1 = $title->getTemplateLinksFrom();
$this->setMwGlobals( 'wgLang', Language::factory( 'de' ) );
$page = WikiPage::factory( $title ); // In order to force the re-rendering of the same wikitext
// We need an edit, a purge is not enough to regenerate the tables
$page->doEditContent(
new WikitextContent( '{{:{{int:history}}}}' ),
'Test code for bug 14404',
EDIT_UPDATE,
false,
$user
);
$templates2 = $title->getTemplateLinksFrom();
/**
* @var Title[] $templates1
* @var Title[] $templates2
*/
$this->assertEquals( $templates1, $templates2 );
$this->assertEquals( $templates1[0]->getFullText(), 'Historial' );
}
}