Merge "(bug 35993) API gettoken parameter is deprecated (release notes complement)"
[lhc/web/wiklou.git] / tests / phpunit / languages / LanguageRuTest.php
1 <?php
2 /**
3 * @author Amir E. Aharoni
4 * based on LanguageBe_tarask.php
5 * @copyright Copyright © 2012, Amir E. Aharoni
6 * @file
7 */
8
9 /** Tests for MediaWiki languages/classes/LanguageRu.php */
10 class LanguageRuTest extends LanguageClassesTestCase {
11
12 /** @dataProvider providePluralFourForms */
13 function testPluralFourForms( $result, $value ) {
14 $forms = array( 'one', 'few', 'many', 'other' );
15 $this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) );
16 }
17
18 function providePluralFourForms() {
19 return array(
20 array( 'one', 1 ),
21 array( 'many', 11 ),
22 array( 'one', 91 ),
23 array( 'one', 121 ),
24 array( 'few', 2 ),
25 array( 'few', 3 ),
26 array( 'few', 4 ),
27 array( 'few', 334 ),
28 array( 'many', 5 ),
29 array( 'many', 15 ),
30 array( 'many', 120 ),
31 );
32 }
33
34 /** @dataProvider providePluralTwoForms */
35 function testPluralTwoForms( $result, $value ) {
36 $forms = array( 'one', 'several' );
37 $this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) );
38 }
39
40 function providePluralTwoForms() {
41 return array(
42 array( 'one', 1 ),
43 array( 'several', 11 ),
44 array( 'several', 91 ),
45 array( 'several', 121 ),
46 );
47 }
48
49 /** @dataProvider providerGrammar */
50 function testGrammar( $result, $word, $case ) {
51 $this->assertEquals( $result, $this->getLang()->convertGrammar( $word, $case ) );
52 }
53
54 function providerGrammar() {
55 return array(
56 array(
57 'Википедии',
58 'Википедия',
59 'genitive',
60 ),
61 array(
62 'Викитеки',
63 'Викитека',
64 'genitive',
65 ),
66 array(
67 'Викитеке',
68 'Викитека',
69 'prepositional',
70 ),
71 array(
72 'Викиданных',
73 'Викиданные',
74 'prepositional',
75 ),
76 );
77 }
78 }