MediaWiki  REL1_19
LanguageArTest.php
Go to the documentation of this file.
00001 <?php
00008 class LanguageArTest extends MediaWikiTestCase {
00009         private $lang;
00010 
00011         function setUp() {
00012                 $this->lang = Language::factory( 'Ar' );
00013         }
00014         function tearDown() {
00015                 unset( $this->lang );
00016         }
00017 
00018         function testFormatNum() {
00019                 $this->assertEquals( '١٬٢٣٤٬٥٦٧', $this->lang->formatNum( '1234567' ) );
00020                 $this->assertEquals( '-١٢٫٨٩', $this->lang->formatNum( -12.89 ) );
00021         }
00022 
00027         function testSprintfDate( $format, $date, $expected ) {
00028                 $this->assertEquals( $expected, $this->lang->sprintfDate( $format, $date ) );
00029         }
00030 
00031         function providerSprintfDate() {
00032                 return array(
00033                         array(
00034                                 'xg "vs" g',
00035                                 '20120102030410',
00036                                 'يناير vs ٣'
00037                         ),
00038                         array(
00039                                 'xmY',
00040                                 '20120102030410',
00041                                 '١٤٣٣'
00042                         ),
00043                         array(
00044                                 'xnxmY',
00045                                 '20120102030410',
00046                                 '1433'
00047                         ),
00048                         array(
00049                                 'xN xmj xmn xN xmY',
00050                                 '20120102030410',
00051                                 ' 7 2  ١٤٣٣'
00052                         ),
00053                 );
00054         }
00056         function testPlural( $result, $value ) {
00057                 $forms =  array( 'zero', 'one', 'two', 'few', 'many', 'other' );
00058                 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
00059         }
00060         function providePlural() {
00061                 return array (
00062                         array( 'zero', 0 ),
00063                         array( 'one', 1 ),
00064                         array( 'two', 2 ),
00065                         array( 'few', 3 ),
00066                         array( 'few', 9 ),
00067                         array( 'few', 110 ),
00068                         array( 'many', 11 ),
00069                         array( 'many', 15 ),
00070                         array( 'many', 99 ),
00071                         array( 'many', 9999 ),
00072                         array( 'other', 100 ),
00073                         array( 'other', 102 ),
00074                         array( 'other', 1000 ),
00075                         array( 'other', 1.7 ),
00076                 );
00077         }
00078 }