Remove $wgContLanguageCode usage in core.
[mediawiki.git] / maintenance / tests / MessageTest.php
blob6c5580294e90ae495eeab35becc52ab4c7c9dabb
1 <?php
3 class MessageTest extends PHPUnit_Framework_TestCase {
5 function setUp() {
6 global $wgLanguageCode;
8 $wgLanguageCode = 'en'; # For mainpage to be 'Main Page'
11 function testExists() {
12 $this->assertTrue( wfMessage( 'mainpage' )->exists() );
13 $this->assertTrue( wfMessage( 'mainpage' )->params( array() )->exists() );
14 $this->assertTrue( wfMessage( 'mainpage' )->rawParams( 'foo', 123 )->exists() );
15 $this->assertFalse( wfMessage( 'i-dont-exist-evar' )->exists() );
16 $this->assertFalse( wfMessage( 'i-dont-exist-evar' )->params( array() )->exists() );
17 $this->assertFalse( wfMessage( 'i-dont-exist-evar' )->rawParams( 'foo', 123 )->exists() );
20 function testKey() {
21 $this->assertType( 'Message', wfMessage( 'mainpage' ) );
22 $this->assertType( 'Message', wfMessage( 'i-dont-exist-evar' ) );
23 $this->assertEquals( 'Main Page', wfMessage( 'mainpage' )->text() );
24 $this->assertEquals( '&lt;i-dont-exist-evar&gt;', wfMessage( 'i-dont-exist-evar' )->text() );
27 function testInLanguage() {
28 $this->assertEquals( 'Main Page', wfMessage( 'mainpage' )->inLanguage( 'en' )->text() );
29 $this->assertEquals( 'Заглавная страница', wfMessage( 'mainpage' )->inLanguage( 'ru' )->text() );
30 $this->assertEquals( 'Main Page', wfMessage( 'mainpage' )->inLanguage( Language::factory( 'en' ) )->text() );
31 $this->assertEquals( 'Заглавная страница', wfMessage( 'mainpage' )->inLanguage( Language::factory( 'ru' ) )->text() );
34 /**
35 * @expectedException MWException
37 function testInLanguageThrows() {
38 wfMessage( 'foo' )->inLanguage( 123 );