CLDR Plural rules based plural form calculation
[lhc/web/wiklou.git] / tests / phpunit / languages / LanguageHeTest.php
1 <?php
2 /**
3 * @author Amir E. Aharoni
4 * @copyright Copyright © 2012, Amir E. Aharoni
5 * @file
6 */
7
8 /** Tests for MediaWiki languages/classes/LanguageHe.php */
9 class LanguageHeTest extends MediaWikiTestCase {
10 private $lang;
11
12 function setUp() {
13 $this->lang = Language::factory( 'he' );
14 }
15 function tearDown() {
16 unset( $this->lang );
17 }
18
19 /** @dataProvider providerPluralDual */
20 function testPluralDual( $result, $value ) {
21 $forms = array( 'one', 'two', 'other' );
22 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
23 }
24
25 function providerPluralDual() {
26 return array (
27 array( 'other', 0 ), // Zero -> plural
28 array( 'one', 1 ), // Singular
29 array( 'two', 2 ), // Dual
30 array( 'other', 3 ), // Plural
31 );
32 }
33
34 /** @dataProvider providerPlural */
35 function testPlural( $result, $value ) {
36 $forms = array( 'one', 'other' );
37 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
38 }
39
40 function providerPlural() {
41 return array (
42 array( 'other', 0 ), // Zero -> plural
43 array( 'one', 1 ), // Singular
44 array( 'other', 2 ), // Plural, no dual provided
45 array( 'other', 3 ), // Plural
46 );
47 }
48 }