1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- /**
- * @group Database
- */
- class ArticleTablesTest extends MediaWikiLangTestCase {
- /**
- * Make sure that T16404 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( 'T16404' );
- $page = WikiPage::factory( $title );
- $user = new User();
- $user->mRights = [ 'createpage', 'edit', 'purge' ];
- $this->setContentLang( 'es' );
- $this->setUserLang( 'fr' );
- $page->doEditContent(
- new WikitextContent( '{{:{{int:history}}}}' ),
- 'Test code for T16404',
- 0,
- false,
- $user
- );
- $templates1 = $title->getTemplateLinksFrom();
- $this->setUserLang( '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 T16404',
- EDIT_UPDATE,
- false,
- $user
- );
- $templates2 = $title->getTemplateLinksFrom();
- /**
- * @var Title[] $templates1
- * @var Title[] $templates2
- */
- $this->assertEquals( $templates1, $templates2 );
- $this->assertEquals( $templates1[0]->getFullText(), 'Historial' );
- }
- }
|