Merge branch 'master' into Wikidata
[lhc/web/wiklou.git] / tests / phpunit / languages / LanguagePlTest.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/LanguagePl.php */
9 class LanguagePlTest extends MediaWikiTestCase {
10 private $lang;
11
12 function setUp() {
13 $this->lang = Language::factory( 'pl' );
14 }
15 function tearDown() {
16 unset( $this->lang );
17 }
18
19 /** @dataProvider providerPluralFourForms */
20 function testPluralFourForms( $result, $value ) {
21 $forms = array( 'one', 'few', 'many' );
22 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
23 }
24
25 function providerPluralFourForms() {
26 return array (
27 array( 'many', 0 ),
28 array( 'one', 1 ),
29 array( 'few', 2 ),
30 array( 'few', 3 ),
31 array( 'few', 4 ),
32 array( 'many', 5 ),
33 array( 'many', 9 ),
34 array( 'many', 10 ),
35 array( 'many', 11 ),
36 array( 'many', 21 ),
37 array( 'few', 22 ),
38 array( 'few', 23 ),
39 array( 'few', 24 ),
40 array( 'many', 25 ),
41 array( 'many', 200 ),
42 array( 'many', 201 ),
43 );
44 }
45
46 /** @dataProvider providerPlural */
47 function testPlural( $result, $value ) {
48 $forms = array( 'one', 'many' );
49 $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
50 }
51
52 function providerPlural() {
53 return array (
54 array( 'many', 0 ),
55 array( 'one', 1 ),
56 array( 'many', 2 ),
57 array( 'many', 3 ),
58 array( 'many', 4 ),
59 array( 'many', 5 ),
60 array( 'many', 9 ),
61 array( 'many', 10 ),
62 array( 'many', 11 ),
63 array( 'many', 21 ),
64 array( 'many', 22 ),
65 array( 'many', 23 ),
66 array( 'many', 24 ),
67 array( 'many', 25 ),
68 array( 'many', 200 ),
69 array( 'many', 201 ),
70 );
71 }
72 }