2012-01-31 13:49:36 +00:00
|
|
|
<?php
|
|
|
|
|
/**
|
|
|
|
|
* @author Amir E. Aharoni
|
|
|
|
|
* @copyright Copyright © 2012, Amir E. Aharoni
|
|
|
|
|
* @file
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/** Tests for MediaWiki languages/classes/LanguageHe.php */
|
2012-10-23 20:53:17 +00:00
|
|
|
class LanguageHeTest extends LanguageClassesTestCase {
|
2012-01-31 13:49:36 +00:00
|
|
|
|
2012-01-31 14:42:38 +00:00
|
|
|
/** @dataProvider providerPluralDual */
|
|
|
|
|
function testPluralDual( $result, $value ) {
|
2012-06-18 08:28:44 +00:00
|
|
|
$forms = array( 'one', 'two', 'other' );
|
2012-10-23 20:53:17 +00:00
|
|
|
$this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) );
|
2012-01-31 14:42:38 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function providerPluralDual() {
|
2013-02-15 10:27:48 +00:00
|
|
|
return array(
|
2012-06-18 08:28:44 +00:00
|
|
|
array( 'other', 0 ), // Zero -> plural
|
2012-01-31 14:42:38 +00:00
|
|
|
array( 'one', 1 ), // Singular
|
|
|
|
|
array( 'two', 2 ), // Dual
|
2012-06-18 08:28:44 +00:00
|
|
|
array( 'other', 3 ), // Plural
|
2012-01-31 14:42:38 +00:00
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2012-01-31 13:49:36 +00:00
|
|
|
/** @dataProvider providerPlural */
|
|
|
|
|
function testPlural( $result, $value ) {
|
2012-06-18 08:28:44 +00:00
|
|
|
$forms = array( 'one', 'other' );
|
2012-10-23 20:53:17 +00:00
|
|
|
$this->assertEquals( $result, $this->getLang()->convertPlural( $value, $forms ) );
|
2012-01-31 13:49:36 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function providerPlural() {
|
2013-02-15 10:27:48 +00:00
|
|
|
return array(
|
2012-06-18 08:28:44 +00:00
|
|
|
array( 'other', 0 ), // Zero -> plural
|
2012-01-31 13:49:36 +00:00
|
|
|
array( 'one', 1 ), // Singular
|
2012-06-18 08:28:44 +00:00
|
|
|
array( 'other', 2 ), // Plural, no dual provided
|
|
|
|
|
array( 'other', 3 ), // Plural
|
2012-01-31 13:49:36 +00:00
|
|
|
);
|
|
|
|
|
}
|
2012-11-10 09:45:27 +00:00
|
|
|
|
|
|
|
|
/** @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() {
|
2013-02-15 10:27:48 +00:00
|
|
|
return array(
|
2012-11-10 09:45:27 +00:00
|
|
|
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 */ 'תחילית',
|
|
|
|
|
),
|
|
|
|
|
);
|
|
|
|
|
}
|
2012-01-31 13:49:36 +00:00
|
|
|
}
|