diff options
Diffstat (limited to 'tests/phpunit/languages/LanguageHeTest.php')
-rw-r--r-- | tests/phpunit/languages/LanguageHeTest.php | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/tests/phpunit/languages/LanguageHeTest.php b/tests/phpunit/languages/LanguageHeTest.php new file mode 100644 index 00000000..6de88e59 --- /dev/null +++ b/tests/phpunit/languages/LanguageHeTest.php @@ -0,0 +1,77 @@ +<?php +/** + * @author Amir E. Aharoni + * @copyright Copyright © 2012, Amir E. Aharoni + * @file + */ + +/** Tests for MediaWiki languages/classes/LanguageHe.php */ +class LanguageHeTest extends LanguageClassesTestCase { + + /** @dataProvider providerPluralDual */ + function testPluralDual( $result, $value ) { + $forms = array( 'one', 'two', 'other' ); + $this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) ); + } + + function providerPluralDual() { + return array( + array( 'other', 0 ), // Zero -> plural + array( 'one', 1 ), // Singular + array( 'two', 2 ), // Dual + array( 'other', 3 ), // Plural + ); + } + + /** @dataProvider providerPlural */ + function testPlural( $result, $value ) { + $forms = array( 'one', 'other' ); + $this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) ); + } + + function providerPlural() { + return array( + array( 'other', 0 ), // Zero -> plural + array( 'one', 1 ), // Singular + array( 'other', 2 ), // Plural, no dual provided + array( 'other', 3 ), // Plural + ); + } + + /** @dataProvider providerGrammar */ + function testGrammar( $result, $word, $case ) { + $this->assertEquals( $result, $this->getLang()->convertGrammar( $word, $case ) ); + } + + // The comments in the beginning of the line help avoid RTL problems + // with text editors. + function providerGrammar() { + return array( + array( + /* result */ 'וויקיפדיה', + /* word */ 'ויקיפדיה', + /* case */ 'תחילית', + ), + array( + /* result */ 'וולפגנג', + /* word */ 'וולפגנג', + /* case */ 'prefixed', + ), + array( + /* result */ 'קובץ', + /* word */ 'הקובץ', + /* case */ 'תחילית', + ), + array( + /* result */ '־Wikipedia', + /* word */ 'Wikipedia', + /* case */ 'תחילית', + ), + array( + /* result */ '־1995', + /* word */ '1995', + /* case */ 'תחילית', + ), + ); + } +} |