MediaWiki
REL1_19
|
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 }