MediaWiki  REL1_22
LanguageArTest.php
Go to the documentation of this file.
00001 <?php
00008 class LanguageArTest extends LanguageClassesTestCase {
00013     public function testFormatNum() {
00014         $this->assertEquals( '١٬٢٣٤٬٥٦٧', $this->getLang()->formatNum( '1234567' ) );
00015         $this->assertEquals( '-١٢٫٨٩', $this->getLang()->formatNum( -12.89 ) );
00016     }
00017 
00023     public function testSprintfDate( $format, $date, $expected ) {
00024         $this->assertEquals( $expected, $this->getLang()->sprintfDate( $format, $date ) );
00025     }
00026 
00027     public static function providerSprintfDate() {
00028         return array(
00029             array(
00030                 'xg "vs" g',
00031                 '20120102030410',
00032                 'يناير vs ٣'
00033             ),
00034             array(
00035                 'xmY',
00036                 '20120102030410',
00037                 '١٤٣٣'
00038             ),
00039             array(
00040                 'xnxmY',
00041                 '20120102030410',
00042                 '1433'
00043             ),
00044             array(
00045                 'xN xmj xmn xN xmY',
00046                 '20120102030410',
00047                 ' 7 2  ١٤٣٣'
00048             ),
00049         );
00050     }
00051 
00056     public function testPlural( $result, $value ) {
00057         $forms = array( 'zero', 'one', 'two', 'few', 'many', 'other' );
00058         $this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) );
00059     }
00060 
00065     public function testGetPluralRuleType( $result, $value ) {
00066         $this->assertEquals( $result, $this->getLang()->getPluralRuleType( $value ) );
00067     }
00068 
00069     public static function providePlural() {
00070         return array(
00071             array( 'zero', 0 ),
00072             array( 'one', 1 ),
00073             array( 'two', 2 ),
00074             array( 'few', 3 ),
00075             array( 'few', 9 ),
00076             array( 'few', 110 ),
00077             array( 'many', 11 ),
00078             array( 'many', 15 ),
00079             array( 'many', 99 ),
00080             array( 'many', 9999 ),
00081             array( 'other', 100 ),
00082             array( 'other', 102 ),
00083             array( 'other', 1000 ),
00084             array( 'other', 1.7 ),
00085         );
00086     }
00087 }