Localisation updates from http://translatewiki.net.
[mediawiki.git] / tests / phpunit / languages / LanguageArTest.php
blobb23e0534109828d84886147142a1c4fff8e6c4e6
1 <?php
2 /**
3 * Based on LanguagMlTest
4 * @file
5 */
7 /** Tests for MediaWiki languages/LanguageAr.php */
8 class LanguageArTest extends MediaWikiTestCase {
9 private $lang;
11 function setUp() {
12 $this->lang = Language::factory( 'Ar' );
14 function tearDown() {
15 unset( $this->lang );
18 function testFormatNum() {
19 $this->assertEquals( '١٬٢٣٤٬٥٦٧', $this->lang->formatNum( '1234567' ) );
20 $this->assertEquals( '-١٢٫٨٩', $this->lang->formatNum( -12.89 ) );
23 /**
24 * Mostly to test the raw ascii feature.
25 * @dataProvider providerSprintfDate
27 function testSprintfDate( $format, $date, $expected ) {
28 $this->assertEquals( $expected, $this->lang->sprintfDate( $format, $date ) );
31 function providerSprintfDate() {
32 return array(
33 array(
34 'xg "vs" g',
35 '20120102030410',
36 'يناير vs ٣'
38 array(
39 'xmY',
40 '20120102030410',
41 '١٤٣٣'
43 array(
44 'xnxmY',
45 '20120102030410',
46 '1433'
48 array(
49 'xN xmj xmn xN xmY',
50 '20120102030410',
51 ' 7 2 ١٤٣٣'
55 /** @dataProvider providePlural */
56 function testPlural( $result, $value ) {
57 $forms = array( 'zero', 'one', 'two', 'few', 'many', 'other' );
58 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
60 function providePlural() {
61 return array (
62 array( 'zero', 0 ),
63 array( 'one', 1 ),
64 array( 'two', 2 ),
65 array( 'few', 3 ),
66 array( 'few', 9 ),
67 array( 'few', 110 ),
68 array( 'many', 11 ),
69 array( 'many', 15 ),
70 array( 'many', 99 ),
71 array( 'many', 9999 ),
72 array( 'other', 100 ),
73 array( 'other', 102 ),
74 array( 'other', 1000 ),
75 array( 'other', 1.7 ),