summaryrefslogtreecommitdiff
path: root/tests/phpunit/languages
diff options
context:
space:
mode:
Diffstat (limited to 'tests/phpunit/languages')
-rw-r--r--tests/phpunit/languages/LanguageAmTest.php33
-rw-r--r--tests/phpunit/languages/LanguageArTest.php78
-rw-r--r--tests/phpunit/languages/LanguageBeTest.php40
-rw-r--r--tests/phpunit/languages/LanguageBe_taraskTest.php65
-rw-r--r--tests/phpunit/languages/LanguageBhTest.php34
-rw-r--r--tests/phpunit/languages/LanguageBsTest.php41
-rw-r--r--tests/phpunit/languages/LanguageCsTest.php40
-rw-r--r--tests/phpunit/languages/LanguageCuTest.php41
-rw-r--r--tests/phpunit/languages/LanguageCyTest.php42
-rw-r--r--tests/phpunit/languages/LanguageDsbTest.php40
-rw-r--r--tests/phpunit/languages/LanguageFrTest.php34
-rw-r--r--tests/phpunit/languages/LanguageGaTest.php34
-rw-r--r--tests/phpunit/languages/LanguageGdTest.php38
-rw-r--r--tests/phpunit/languages/LanguageGvTest.php39
-rw-r--r--tests/phpunit/languages/LanguageHeTest.php48
-rw-r--r--tests/phpunit/languages/LanguageHiTest.php34
-rw-r--r--tests/phpunit/languages/LanguageHrTest.php41
-rw-r--r--tests/phpunit/languages/LanguageHsbTest.php40
-rw-r--r--tests/phpunit/languages/LanguageHuTest.php34
-rw-r--r--tests/phpunit/languages/LanguageHyTest.php34
-rw-r--r--tests/phpunit/languages/LanguageKshTest.php34
-rw-r--r--tests/phpunit/languages/LanguageLnTest.php34
-rw-r--r--tests/phpunit/languages/LanguageLtTest.php53
-rw-r--r--tests/phpunit/languages/LanguageLvTest.php39
-rw-r--r--tests/phpunit/languages/LanguageMgTest.php35
-rw-r--r--tests/phpunit/languages/LanguageMkTest.php41
-rw-r--r--tests/phpunit/languages/LanguageMlTest.php43
-rw-r--r--tests/phpunit/languages/LanguageMoTest.php43
-rw-r--r--tests/phpunit/languages/LanguageMtTest.php72
-rw-r--r--tests/phpunit/languages/LanguageNlTest.php28
-rw-r--r--tests/phpunit/languages/LanguageNsoTest.php32
-rw-r--r--tests/phpunit/languages/LanguagePlTest.php72
-rw-r--r--tests/phpunit/languages/LanguageRoTest.php43
-rw-r--r--tests/phpunit/languages/LanguageRuTest.php54
-rw-r--r--tests/phpunit/languages/LanguageSeTest.php48
-rw-r--r--tests/phpunit/languages/LanguageSgsTest.php66
-rw-r--r--tests/phpunit/languages/LanguageShTest.php32
-rw-r--r--tests/phpunit/languages/LanguageSkTest.php40
-rw-r--r--tests/phpunit/languages/LanguageSlTest.php42
-rw-r--r--tests/phpunit/languages/LanguageSmaTest.php48
-rw-r--r--tests/phpunit/languages/LanguageSrTest.php223
-rw-r--r--tests/phpunit/languages/LanguageTest.php1069
-rw-r--r--tests/phpunit/languages/LanguageTiTest.php32
-rw-r--r--tests/phpunit/languages/LanguageTlTest.php32
-rw-r--r--tests/phpunit/languages/LanguageTrTest.php68
-rw-r--r--tests/phpunit/languages/LanguageUkTest.php54
-rw-r--r--tests/phpunit/languages/LanguageUzTest.php120
-rw-r--r--tests/phpunit/languages/LanguageWaTest.php32
-rw-r--r--tests/phpunit/languages/utils/CLDRPluralRuleEvaluatorTest.php95
49 files changed, 0 insertions, 3454 deletions
diff --git a/tests/phpunit/languages/LanguageAmTest.php b/tests/phpunit/languages/LanguageAmTest.php
deleted file mode 100644
index 3a648ded..00000000
--- a/tests/phpunit/languages/LanguageAmTest.php
+++ /dev/null
@@ -1,33 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageAm.php */
-class LanguageAmTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Am' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageArTest.php b/tests/phpunit/languages/LanguageArTest.php
deleted file mode 100644
index b23e0534..00000000
--- a/tests/phpunit/languages/LanguageArTest.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-/**
- * Based on LanguagMlTest
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageAr.php */
-class LanguageArTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Ar' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- function testFormatNum() {
- $this->assertEquals( '١٬٢٣٤٬٥٦٧', $this->lang->formatNum( '1234567' ) );
- $this->assertEquals( '-١٢٫٨٩', $this->lang->formatNum( -12.89 ) );
- }
-
- /**
- * Mostly to test the raw ascii feature.
- * @dataProvider providerSprintfDate
- */
- function testSprintfDate( $format, $date, $expected ) {
- $this->assertEquals( $expected, $this->lang->sprintfDate( $format, $date ) );
- }
-
- function providerSprintfDate() {
- return array(
- array(
- 'xg "vs" g',
- '20120102030410',
- 'يناير vs ٣'
- ),
- array(
- 'xmY',
- '20120102030410',
- '١٤٣٣'
- ),
- array(
- 'xnxmY',
- '20120102030410',
- '1433'
- ),
- array(
- 'xN xmj xmn xN xmY',
- '20120102030410',
- ' 7 2 ١٤٣٣'
- ),
- );
- }
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'zero', 'one', 'two', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providePlural() {
- return array (
- array( 'zero', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'few', 3 ),
- array( 'few', 9 ),
- array( 'few', 110 ),
- array( 'many', 11 ),
- array( 'many', 15 ),
- array( 'many', 99 ),
- array( 'many', 9999 ),
- array( 'other', 100 ),
- array( 'other', 102 ),
- array( 'other', 1000 ),
- array( 'other', 1.7 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageBeTest.php b/tests/phpunit/languages/LanguageBeTest.php
deleted file mode 100644
index 735ccc63..00000000
--- a/tests/phpunit/languages/LanguageBeTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageBe.php */
-class LanguageBeTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Be' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 1 ),
- array( 'many', 11 ),
- array( 'one', 91 ),
- array( 'one', 121 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'few', 334 ),
- array( 'many', 5 ),
- array( 'many', 15 ),
- array( 'many', 120 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageBe_taraskTest.php b/tests/phpunit/languages/LanguageBe_taraskTest.php
deleted file mode 100644
index 765cdb8f..00000000
--- a/tests/phpunit/languages/LanguageBe_taraskTest.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-
-class LanguageBeTaraskTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Be-tarask' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** see bug 23156 & r64981 */
- function testSearchRightSingleQuotationMarkAsApostroph() {
- $this->assertEquals(
- "'",
- $this->lang->normalizeForSearch( '’' ),
- 'bug 23156: U+2019 conversion to U+0027'
- );
- }
- /** see bug 23156 & r64981 */
- function testCommafy() {
- $this->assertEquals( '1,234,567', $this->lang->commafy( '1234567' ) );
- $this->assertEquals( '12,345', $this->lang->commafy( '12345' ) );
- }
- /** see bug 23156 & r64981 */
- function testDoesNotCommafyFourDigitsNumber() {
- $this->assertEquals( '1234', $this->lang->commafy( '1234' ) );
- }
- /** @dataProvider providePluralFourForms */
- function testPluralFourForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralFourForms() {
- return array (
- array( 'one', 1 ),
- array( 'many', 11 ),
- array( 'one', 91 ),
- array( 'one', 121 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'few', 334 ),
- array( 'many', 5 ),
- array( 'many', 15 ),
- array( 'many', 120 ),
- );
- }
- /** @dataProvider providePluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'several' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providePluralTwoForms() {
- return array (
- array( 'one', 1 ),
- array( 'several', 11 ),
- array( 'several', 91 ),
- array( 'several', 121 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageBhTest.php b/tests/phpunit/languages/LanguageBhTest.php
deleted file mode 100644
index e1e2a13e..00000000
--- a/tests/phpunit/languages/LanguageBhTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageBh.php */
-class LanguageBhTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Bh' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageBsTest.php b/tests/phpunit/languages/LanguageBsTest.php
deleted file mode 100644
index b6631c03..00000000
--- a/tests/phpunit/languages/LanguageBsTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageBs.php */
-class LanguageBsTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Bs' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 4 ),
- array( 'many', 5 ),
- array( 'many', 11 ),
- array( 'many', 20 ),
- array( 'one', 21 ),
- array( 'few', 24 ),
- array( 'many', 25 ),
- array( 'many', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageCsTest.php b/tests/phpunit/languages/LanguageCsTest.php
deleted file mode 100644
index dda29f9a..00000000
--- a/tests/phpunit/languages/LanguageCsTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/Languagecs.php */
-class LanguageCsTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'cs' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'other', 5 ),
- array( 'other', 11 ),
- array( 'other', 20 ),
- array( 'other', 25 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageCuTest.php b/tests/phpunit/languages/LanguageCuTest.php
deleted file mode 100644
index f8186d7b..00000000
--- a/tests/phpunit/languages/LanguageCuTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageCu.php */
-class LanguageCuTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'cu' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'many', 3 ),
- array( 'many', 4 ),
- array( 'other', 5 ),
- array( 'one', 11 ),
- array( 'other', 20 ),
- array( 'few', 22 ),
- array( 'many', 223 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageCyTest.php b/tests/phpunit/languages/LanguageCyTest.php
deleted file mode 100644
index e9f9e410..00000000
--- a/tests/phpunit/languages/LanguageCyTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageCy.php */
-class LanguageCyTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'cy' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'zero', 'one', 'two', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'zero', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'few', 3 ),
- array( 'many', 6 ),
- array( 'other', 4 ),
- array( 'other', 5 ),
- array( 'other', 11 ),
- array( 'other', 20 ),
- array( 'other', 22 ),
- array( 'other', 223 ),
- array( 'other', 200.00 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageDsbTest.php b/tests/phpunit/languages/LanguageDsbTest.php
deleted file mode 100644
index ab7f9313..00000000
--- a/tests/phpunit/languages/LanguageDsbTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageDsb.php */
-class LanguageDsbTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'dsb' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'two', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'one', 101 ),
- array( 'one', 90001 ),
- array( 'two', 2 ),
- array( 'few', 3 ),
- array( 'few', 203 ),
- array( 'few', 4 ),
- array( 'other', 99 ),
- array( 'other', 555 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageFrTest.php b/tests/phpunit/languages/LanguageFrTest.php
deleted file mode 100644
index 8538744e..00000000
--- a/tests/phpunit/languages/LanguageFrTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageFr.php */
-class LanguageFrTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'fr' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageGaTest.php b/tests/phpunit/languages/LanguageGaTest.php
deleted file mode 100644
index fbd9f11d..00000000
--- a/tests/phpunit/languages/LanguageGaTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageGa.php */
-class LanguageGaTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'ga' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'two', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageGdTest.php b/tests/phpunit/languages/LanguageGdTest.php
deleted file mode 100644
index 24574bda..00000000
--- a/tests/phpunit/languages/LanguageGdTest.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageGd.php */
-class LanguageGdTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'gd' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- // The CLDR ticket for this plural forms is not same as mw plural forms. See http://unicode.org/cldr/trac/ticket/2883
- $forms = array( 'Form 1', 'Form 2', 'Form 3', 'Form 4', 'Form 5', 'Form 6' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providerPlural() {
- return array (
- array( 'Form 6', 0 ),
- array( 'Form 1', 1 ),
- array( 'Form 2', 2 ),
- array( 'Form 3', 11 ),
- array( 'Form 4', 12 ),
- array( 'Form 5', 3 ),
- array( 'Form 5', 19 ),
- array( 'Form 6', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageGvTest.php b/tests/phpunit/languages/LanguageGvTest.php
deleted file mode 100644
index 3d298b9b..00000000
--- a/tests/phpunit/languages/LanguageGvTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageGv.php */
-class LanguageGvTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'gv' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- // This is not compatible with CLDR plural rules http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#gv
- $forms = array( 'Form 1', 'Form 2', 'Form 3', 'Form 4' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providerPlural() {
- return array (
- array( 'Form 4', 0 ),
- array( 'Form 2', 1 ),
- array( 'Form 3', 2 ),
- array( 'Form 4', 3 ),
- array( 'Form 1', 20 ),
- array( 'Form 2', 21 ),
- array( 'Form 3', 22 ),
- array( 'Form 4', 23 ),
- array( 'Form 4', 50 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageHeTest.php b/tests/phpunit/languages/LanguageHeTest.php
deleted file mode 100644
index 7833da71..00000000
--- a/tests/phpunit/languages/LanguageHeTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageHe.php */
-class LanguageHeTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'he' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPluralDual */
- function testPluralDual( $result, $value ) {
- $forms = array( 'one', 'two', 'other' );
- $this->assertEquals( $result, $this->lang->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->lang->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
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageHiTest.php b/tests/phpunit/languages/LanguageHiTest.php
deleted file mode 100644
index ead9e020..00000000
--- a/tests/phpunit/languages/LanguageHiTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageHi.php */
-class LanguageHiTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Hi' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageHrTest.php b/tests/phpunit/languages/LanguageHrTest.php
deleted file mode 100644
index 4f1c66bf..00000000
--- a/tests/phpunit/languages/LanguageHrTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageHr.php */
-class LanguageHrTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'hr' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 4 ),
- array( 'many', 5 ),
- array( 'many', 11 ),
- array( 'many', 20 ),
- array( 'one', 21 ),
- array( 'few', 24 ),
- array( 'many', 25 ),
- array( 'many', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageHsbTest.php b/tests/phpunit/languages/LanguageHsbTest.php
deleted file mode 100644
index 803c7721..00000000
--- a/tests/phpunit/languages/LanguageHsbTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageHsb.php */
-class LanguageHsbTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'hsb' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'two', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'one', 101 ),
- array( 'one', 90001 ),
- array( 'two', 2 ),
- array( 'few', 3 ),
- array( 'few', 203 ),
- array( 'few', 4 ),
- array( 'other', 99 ),
- array( 'other', 555 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageHuTest.php b/tests/phpunit/languages/LanguageHuTest.php
deleted file mode 100644
index adbd37ec..00000000
--- a/tests/phpunit/languages/LanguageHuTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageHu.php */
-class LanguageHuTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Hu' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageHyTest.php b/tests/phpunit/languages/LanguageHyTest.php
deleted file mode 100644
index 7990bdfc..00000000
--- a/tests/phpunit/languages/LanguageHyTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageHy.php */
-class LanguageHyTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'hy' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageKshTest.php b/tests/phpunit/languages/LanguageKshTest.php
deleted file mode 100644
index ab889464..00000000
--- a/tests/phpunit/languages/LanguageKshTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageKsh.php */
-class LanguageKshTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'ksh' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other', 'zero' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'zero', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageLnTest.php b/tests/phpunit/languages/LanguageLnTest.php
deleted file mode 100644
index 0fd9167e..00000000
--- a/tests/phpunit/languages/LanguageLnTest.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageLn.php */
-class LanguageLnTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'ln' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageLtTest.php b/tests/phpunit/languages/LanguageLtTest.php
deleted file mode 100644
index 0d7c7d3e..00000000
--- a/tests/phpunit/languages/LanguageLtTest.php
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageLt.php */
-class LanguageLtTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Lt' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider provideOneFewOtherCases */
- function testOneFewOtherPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- /** @dataProvider provideOneFewCases */
- function testOneFewPlural( $result, $value ) {
- $forms = array( 'one', 'few' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function provideOneFewOtherCases() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 9 ),
- array( 'other', 10 ),
- array( 'other', 11 ),
- array( 'other', 20 ),
- array( 'one', 21 ),
- array( 'few', 32 ),
- array( 'one', 41 ),
- array( 'one', 40001 ),
- );
- }
-
- function provideOneFewCases() {
- return array (
- array( 'one', 1 ),
- array( 'few', 15 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageLvTest.php b/tests/phpunit/languages/LanguageLvTest.php
deleted file mode 100644
index 0636da5f..00000000
--- a/tests/phpunit/languages/LanguageLvTest.php
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageLv.php */
-class LanguageLvTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'lv' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ), #this must be zero form as per CLDR
- array( 'one', 1 ),
- array( 'other', 11 ),
- array( 'one', 21 ),
- array( 'other', 411 ),
- array( 'other', 12.345 ),
- array( 'other', 20 ),
- array( 'one', 31 ),
- array( 'other', 200 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageMgTest.php b/tests/phpunit/languages/LanguageMgTest.php
deleted file mode 100644
index 06b56547..00000000
--- a/tests/phpunit/languages/LanguageMgTest.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageMg.php */
-class LanguageMgTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'mg' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 200 ),
- array( 'other', 123.3434 ),
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageMkTest.php b/tests/phpunit/languages/LanguageMkTest.php
deleted file mode 100644
index cf5ec3d9..00000000
--- a/tests/phpunit/languages/LanguageMkTest.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageMk.php */
-class LanguageMkTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'mk' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'other', 11 ),
- array( 'one', 21 ),
- array( 'other', 411 ),
- array( 'other', 12.345 ),
- array( 'other', 20 ),
- array( 'one', 31 ),
- array( 'other', 200 ),
- );
- }
-
-
-}
diff --git a/tests/phpunit/languages/LanguageMlTest.php b/tests/phpunit/languages/LanguageMlTest.php
deleted file mode 100644
index 8c4b0b2f..00000000
--- a/tests/phpunit/languages/LanguageMlTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2011, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageMl.php */
-class LanguageMlTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Ml' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** see bug 29495 */
- /** @dataProvider providerFormatNum*/
- function testFormatNum( $result, $value ) {
- $this->assertEquals( $result, $this->lang->formatNum( $value ) );
- }
-
- function providerFormatNum() {
- return array(
- array( '12,34,567', '1234567' ),
- array( '12,345', '12345' ),
- array( '1', '1' ),
- array( '123', '123' ) ,
- array( '1,234', '1234' ),
- array( '12,345.56', '12345.56' ),
- array( '12,34,56,79,81,23,45,678', '12345679812345678' ),
- array( '.12345', '.12345' ),
- array( '-12,00,000', '-1200000' ),
- array( '-98', '-98' ),
- array( '-98', -98 ),
- array( '-1,23,45,678', -12345678 ),
- array( '', '' ),
- array( '', null ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageMoTest.php b/tests/phpunit/languages/LanguageMoTest.php
deleted file mode 100644
index 533e590f..00000000
--- a/tests/phpunit/languages/LanguageMoTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageMo.php */
-class LanguageMoTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'mo' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'few', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 19 ),
- array( 'other', 20 ),
- array( 'other', 99 ),
- array( 'other', 100 ),
- array( 'few', 101 ),
- array( 'few', 119 ),
- array( 'other', 120 ),
- array( 'other', 200 ),
- array( 'few', 201 ),
- array( 'few', 219 ),
- array( 'other', 220 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageMtTest.php b/tests/phpunit/languages/LanguageMtTest.php
deleted file mode 100644
index 421bb388..00000000
--- a/tests/phpunit/languages/LanguageMtTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageMt.php */
-class LanguageMtTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'mt' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPluralAllForms */
- function testPluralAllForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPluralAllForms() {
- return array (
- array( 'few', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 10 ),
- array( 'many', 11 ),
- array( 'many', 19 ),
- array( 'other', 20 ),
- array( 'other', 99 ),
- array( 'other', 100 ),
- array( 'other', 101 ),
- array( 'few', 102 ),
- array( 'few', 110 ),
- array( 'many', 111 ),
- array( 'many', 119 ),
- array( 'other', 120 ),
- array( 'other', 201 ),
- );
- }
-
- /** @dataProvider providerPluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPluralTwoForms() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- array( 'many', 10 ),
- array( 'many', 11 ),
- array( 'many', 19 ),
- array( 'many', 20 ),
- array( 'many', 99 ),
- array( 'many', 100 ),
- array( 'many', 101 ),
- array( 'many', 102 ),
- array( 'many', 110 ),
- array( 'many', 111 ),
- array( 'many', 119 ),
- array( 'many', 120 ),
- array( 'many', 201 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageNlTest.php b/tests/phpunit/languages/LanguageNlTest.php
deleted file mode 100644
index cf979cd2..00000000
--- a/tests/phpunit/languages/LanguageNlTest.php
+++ /dev/null
@@ -1,28 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2011, Santhosh Thottingal
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageNl.php */
-class LanguageNlTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Nl' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- function testFormatNum() {
- $this->assertEquals( '1.234.567', $this->lang->formatNum( '1234567' ) );
- $this->assertEquals( '12.345', $this->lang->formatNum( '12345' ) );
- $this->assertEquals( '1', $this->lang->formatNum( '1' ) );
- $this->assertEquals( '123', $this->lang->formatNum( '123' ) );
- $this->assertEquals( '1.234', $this->lang->formatNum( '1234' ) );
- $this->assertEquals( '12.345,56', $this->lang->formatNum( '12345.56' ) );
- $this->assertEquals( ',1234556', $this->lang->formatNum( '.1234556' ) );
- }
-}
diff --git a/tests/phpunit/languages/LanguageNsoTest.php b/tests/phpunit/languages/LanguageNsoTest.php
deleted file mode 100644
index ea393628..00000000
--- a/tests/phpunit/languages/LanguageNsoTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageNso.php */
-class LanguageNsoTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'nso' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguagePlTest.php b/tests/phpunit/languages/LanguagePlTest.php
deleted file mode 100644
index e56d4b77..00000000
--- a/tests/phpunit/languages/LanguagePlTest.php
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguagePl.php */
-class LanguagePlTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'pl' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPluralFourForms */
- function testPluralFourForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPluralFourForms() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'many', 5 ),
- array( 'many', 9 ),
- array( 'many', 10 ),
- array( 'many', 11 ),
- array( 'many', 21 ),
- array( 'few', 22 ),
- array( 'few', 23 ),
- array( 'few', 24 ),
- array( 'many', 25 ),
- array( 'many', 200 ),
- array( 'many', 201 ),
- );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- array( 'many', 3 ),
- array( 'many', 4 ),
- array( 'many', 5 ),
- array( 'many', 9 ),
- array( 'many', 10 ),
- array( 'many', 11 ),
- array( 'many', 21 ),
- array( 'many', 22 ),
- array( 'many', 23 ),
- array( 'many', 24 ),
- array( 'many', 25 ),
- array( 'many', 200 ),
- array( 'many', 201 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageRoTest.php b/tests/phpunit/languages/LanguageRoTest.php
deleted file mode 100644
index 5270f6fe..00000000
--- a/tests/phpunit/languages/LanguageRoTest.php
+++ /dev/null
@@ -1,43 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageRo.php */
-class LanguageRoTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'ro' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'few', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 19 ),
- array( 'other', 20 ),
- array( 'other', 99 ),
- array( 'other', 100 ),
- array( 'few', 101 ),
- array( 'few', 119 ),
- array( 'other', 120 ),
- array( 'other', 200 ),
- array( 'few', 201 ),
- array( 'few', 219 ),
- array( 'other', 220 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageRuTest.php b/tests/phpunit/languages/LanguageRuTest.php
deleted file mode 100644
index 7a1f193b..00000000
--- a/tests/phpunit/languages/LanguageRuTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * based on LanguageBe_tarask.php
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageRu.php */
-class LanguageRuTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'ru' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePluralFourForms */
- function testPluralFourForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralFourForms() {
- return array (
- array( 'one', 1 ),
- array( 'many', 11 ),
- array( 'one', 91 ),
- array( 'one', 121 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'few', 334 ),
- array( 'many', 5 ),
- array( 'many', 15 ),
- array( 'many', 120 ),
- );
- }
- /** @dataProvider providePluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'several' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providePluralTwoForms() {
- return array (
- array( 'one', 1 ),
- array( 'several', 11 ),
- array( 'several', 91 ),
- array( 'several', 121 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSeTest.php b/tests/phpunit/languages/LanguageSeTest.php
deleted file mode 100644
index 065ec29e..00000000
--- a/tests/phpunit/languages/LanguageSeTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSe.php */
-class LanguageSeTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'se' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPluralThreeForms */
- function testPluralThreeForms( $result, $value ) {
- $forms = array( 'one', 'two', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPluralThreeForms() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'other', 3 ),
- );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 3 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSgsTest.php b/tests/phpunit/languages/LanguageSgsTest.php
deleted file mode 100644
index 931c82f0..00000000
--- a/tests/phpunit/languages/LanguageSgsTest.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSgs.php */
-class LanguageSgsTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Sgs' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePluralAllForms */
- function testPluralAllForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralAllForms() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'other', 3 ),
- array( 'many', 10 ),
- array( 'many', 11 ),
- array( 'many', 12 ),
- array( 'many', 19 ),
- array( 'other', 20 ),
- array( 'many', 100 ),
- array( 'one', 101 ),
- array( 'many', 111 ),
- array( 'many', 112 ),
- );
- }
-
- /** @dataProvider providePluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralTwoForms() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 3 ),
- array( 'other', 10 ),
- array( 'other', 11 ),
- array( 'other', 12 ),
- array( 'other', 19 ),
- array( 'other', 20 ),
- array( 'other', 100 ),
- array( 'one', 101 ),
- array( 'other', 111 ),
- array( 'other', 112 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageShTest.php b/tests/phpunit/languages/LanguageShTest.php
deleted file mode 100644
index b8169aed..00000000
--- a/tests/phpunit/languages/LanguageShTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSh.php */
-class LanguageShTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'sh' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'many', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSkTest.php b/tests/phpunit/languages/LanguageSkTest.php
deleted file mode 100644
index 4cfd840e..00000000
--- a/tests/phpunit/languages/LanguageSkTest.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Amir E. Aharoni
- * based on LanguageSkTest.php
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSk.php */
-class LanguageSkTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'sk' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'few', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'other', 5 ),
- array( 'other', 11 ),
- array( 'other', 20 ),
- array( 'other', 25 ),
- array( 'other', 200 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSlTest.php b/tests/phpunit/languages/LanguageSlTest.php
deleted file mode 100644
index c1f75691..00000000
--- a/tests/phpunit/languages/LanguageSlTest.php
+++ /dev/null
@@ -1,42 +0,0 @@
-<?php
-/**
- * @author Santhosh Thottingal
- * @copyright Copyright © 2012, Amir E. Aharoni
- * based on LanguageSkTest.php
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSl.php */
-class LanguageSlTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'sl' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'two', 'few', 'other', 'zero' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'zero', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'other', 5 ),
- array( 'other', 99 ),
- array( 'other', 100 ),
- array( 'one', 101 ),
- array( 'two', 102 ),
- array( 'few', 103 ),
- array( 'one', 201 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSmaTest.php b/tests/phpunit/languages/LanguageSmaTest.php
deleted file mode 100644
index b7e72e97..00000000
--- a/tests/phpunit/languages/LanguageSmaTest.php
+++ /dev/null
@@ -1,48 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageSma.php */
-class LanguageSmaTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'sma' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPluralThreeForms */
- function testPluralThreeForms( $result, $value ) {
- $forms = array( 'one', 'two', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPluralThreeForms() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'two', 2 ),
- array( 'other', 3 ),
- );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'other', 0 ),
- array( 'one', 1 ),
- array( 'other', 2 ),
- array( 'other', 3 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageSrTest.php b/tests/phpunit/languages/LanguageSrTest.php
deleted file mode 100644
index d44ecf8e..00000000
--- a/tests/phpunit/languages/LanguageSrTest.php
+++ /dev/null
@@ -1,223 +0,0 @@
-<?php
-/**
- * PHPUnit tests for the Serbian language.
- * The language can be represented using two scripts:
- * - Latin (SR_el)
- * - Cyrillic (SR_ec)
- * Both representations seems to be bijective, hence MediaWiki can convert
- * from one script to the other.
- *
- * @author Antoine Musso <hashar at free dot fr>
- * @copyright Copyright © 2011, Antoine Musso <hashar at free dot fr>
- * @file
- */
-
-require_once dirname( __DIR__ ) . '/bootstrap.php';
-
-/** Tests for MediaWiki languages/LanguageSr.php */
-class LanguageSrTest extends MediaWikiTestCase {
- /* Language object. Initialized before each test */
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'sr' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- ##### TESTS #######################################################
-
- function testEasyConversions( ) {
- $this->assertCyrillic(
- 'шђчћжШЂЧЋЖ',
- 'Cyrillic guessing characters'
- );
- $this->assertLatin(
- 'šđč枊ĐČĆŽ',
- 'Latin guessing characters'
- );
- }
-
- function testMixedConversions() {
- $this->assertCyrillic(
- 'шђчћжШЂЧЋЖ - šđčćž',
- 'Mostly cyrillic characters'
- );
- $this->assertLatin(
- 'šđč枊ĐČĆŽ - шђчћж',
- 'Mostly latin characters'
- );
- }
-
- function testSameAmountOfLatinAndCyrillicGetConverted() {
- $this->assertConverted(
- '4 latin: šđčć | 4 cyrillic: шђчћ',
- 'sr-ec'
- );
- $this->assertConverted(
- '4 latin: šđčć | 4 cyrillic: шђчћ',
- 'sr-el'
- );
- }
-
- /**
- * @author Nikola Smolenski
- */
- function testConversionToCyrillic() {
- //A simple convertion of Latin to Cyrillic
- $this->assertEquals( 'абвг',
- $this->convertToCyrillic( 'abvg' )
- );
- //Same as above, but assert that -{}-s must be removed and not converted
- $this->assertEquals( 'ljабnjвгdž',
- $this->convertToCyrillic( '-{lj}-ab-{nj}-vg-{dž}-' )
- );
- //A simple convertion of Cyrillic to Cyrillic
- $this->assertEquals( 'абвг',
- $this->convertToCyrillic( 'абвг' )
- );
- //Same as above, but assert that -{}-s must be removed and not converted
- $this->assertEquals( 'ljабnjвгdž',
- $this->convertToCyrillic( '-{lj}-аб-{nj}-вг-{dž}-' )
- );
- //This text has some Latin, but is recognized as Cyrillic, so it should not be converted
- $this->assertEquals( 'abvgшђжчћ',
- $this->convertToCyrillic( 'abvgшђжчћ' )
- );
- //Same as above, but assert that -{}-s must be removed
- $this->assertEquals( 'љabvgњшђжчћџ',
- $this->convertToCyrillic( '-{љ}-abvg-{њ}-шђжчћ-{џ}-' )
- );
- //This text has some Cyrillic, but is recognized as Latin, so it should be converted
- $this->assertEquals( 'абвгшђжчћ',
- $this->convertToCyrillic( 'абвгšđžčć' )
- );
- //Same as above, but assert that -{}-s must be removed and not converted
- $this->assertEquals( 'ljабвгnjшђжчћdž',
- $this->convertToCyrillic( '-{lj}-абвг-{nj}-šđžčć-{dž}-' )
- );
- // Roman numerals are not converted
- $this->assertEquals( 'а I б II в III г IV шђжчћ',
- $this->convertToCyrillic( 'a I b II v III g IV šđžčć' )
- );
- }
-
- function testConversionToLatin() {
- //A simple convertion of Latin to Latin
- $this->assertEquals( 'abcd',
- $this->convertToLatin( 'abcd' )
- );
- //A simple convertion of Cyrillic to Latin
- $this->assertEquals( 'abcd',
- $this->convertToLatin( 'абцд' )
- );
- //This text has some Latin, but is recognized as Cyrillic, so it should be converted
- $this->assertEquals( 'abcdšđžčć',
- $this->convertToLatin( 'abcdшђжчћ' )
- );
- //This text has some Cyrillic, but is recognized as Latin, so it should not be converted
- $this->assertEquals( 'абцдšđžčć',
- $this->convertToLatin( 'абцдšđžčć' )
- );
- }
-
- /** @dataProvider providePluralFourForms */
- function testPluralFourForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralFourForms() {
- return array (
- array( 'one', 1 ),
- array( 'many', 11 ),
- array( 'one', 91 ),
- array( 'one', 121 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'few', 334 ),
- array( 'many', 5 ),
- array( 'many', 15 ),
- array( 'many', 120 ),
- );
- }
- /** @dataProvider providePluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'several' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providePluralTwoForms() {
- return array (
- array( 'one', 1 ),
- array( 'several', 11 ),
- array( 'several', 91 ),
- array( 'several', 121 ),
- );
- }
-
- ##### HELPERS #####################################################
- /**
- *Wrapper to verify text stay the same after applying conversion
- * @param $text string Text to convert
- * @param $variant string Language variant 'sr-ec' or 'sr-el'
- * @param $msg string Optional message
- */
- function assertUnConverted( $text, $variant, $msg = '' ) {
- $this->assertEquals(
- $text,
- $this->convertTo( $text, $variant ),
- $msg
- );
- }
- /**
- * Wrapper to verify a text is different once converted to a variant.
- * @param $text string Text to convert
- * @param $variant string Language variant 'sr-ec' or 'sr-el'
- * @param $msg string Optional message
- */
- function assertConverted( $text, $variant, $msg = '' ) {
- $this->assertNotEquals(
- $text,
- $this->convertTo( $text, $variant ),
- $msg
- );
- }
-
- /**
- * Verifiy the given Cyrillic text is not converted when using
- * using the cyrillic variant and converted to Latin when using
- * the Latin variant.
- */
- function assertCyrillic( $text, $msg = '' ) {
- $this->assertUnConverted( $text, 'sr-ec', $msg );
- $this->assertConverted( $text, 'sr-el', $msg );
- }
- /**
- * Verifiy the given Latin text is not converted when using
- * using the Latin variant and converted to Cyrillic when using
- * the Cyrillic variant.
- */
- function assertLatin( $text, $msg = '' ) {
- $this->assertUnConverted( $text, 'sr-el', $msg );
- $this->assertConverted( $text, 'sr-ec', $msg );
- }
-
-
- /** Wrapper for converter::convertTo() method*/
- function convertTo( $text, $variant ) {
- return $this
- ->lang
- ->mConverter
- ->convertTo(
- $text, $variant
- );
- }
- function convertToCyrillic( $text ) {
- return $this->convertTo( $text, 'sr-ec' );
- }
- function convertToLatin( $text ) {
- return $this->convertTo( $text, 'sr-el' );
- }
-}
diff --git a/tests/phpunit/languages/LanguageTest.php b/tests/phpunit/languages/LanguageTest.php
deleted file mode 100644
index 2fa3e292..00000000
--- a/tests/phpunit/languages/LanguageTest.php
+++ /dev/null
@@ -1,1069 +0,0 @@
-<?php
-
-class LanguageTest extends MediaWikiTestCase {
-
- /**
- * @var Language
- */
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'en' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- function testLanguageConvertDoubleWidthToSingleWidth() {
- $this->assertEquals(
- "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
- $this->lang->normalizeForSearch(
- "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
- ),
- 'convertDoubleWidth() with the full alphabet and digits'
- );
- }
-
- /**
- * @dataProvider provideFormattableTimes
- */
- function testFormatTimePeriod( $seconds, $format, $expected, $desc ) {
- $this->assertEquals( $expected, $this->lang->formatTimePeriod( $seconds, $format ), $desc );
- }
-
- function provideFormattableTimes() {
- return array(
- array(
- 9.45,
- array(),
- '9.5 s',
- 'formatTimePeriod() rounding (<10s)'
- ),
- array(
- 9.45,
- array( 'noabbrevs' => true ),
- '9.5 seconds',
- 'formatTimePeriod() rounding (<10s)'
- ),
- array(
- 9.95,
- array(),
- '10 s',
- 'formatTimePeriod() rounding (<10s)'
- ),
- array(
- 9.95,
- array( 'noabbrevs' => true ),
- '10 seconds',
- 'formatTimePeriod() rounding (<10s)'
- ),
- array(
- 59.55,
- array(),
- '1 min 0 s',
- 'formatTimePeriod() rounding (<60s)'
- ),
- array(
- 59.55,
- array( 'noabbrevs' => true ),
- '1 minute 0 seconds',
- 'formatTimePeriod() rounding (<60s)'
- ),
- array(
- 119.55,
- array(),
- '2 min 0 s',
- 'formatTimePeriod() rounding (<1h)'
- ),
- array(
- 119.55,
- array( 'noabbrevs' => true ),
- '2 minutes 0 seconds',
- 'formatTimePeriod() rounding (<1h)'
- ),
- array(
- 3599.55,
- array(),
- '1 h 0 min 0 s',
- 'formatTimePeriod() rounding (<1h)'
- ),
- array(
- 3599.55,
- array( 'noabbrevs' => true ),
- '1 hour 0 minutes 0 seconds',
- 'formatTimePeriod() rounding (<1h)'
- ),
- array(
- 7199.55,
- array(),
- '2 h 0 min 0 s',
- 'formatTimePeriod() rounding (>=1h)'
- ),
- array(
- 7199.55,
- array( 'noabbrevs' => true ),
- '2 hours 0 minutes 0 seconds',
- 'formatTimePeriod() rounding (>=1h)'
- ),
- array(
- 7199.55,
- 'avoidseconds',
- '2 h 0 min',
- 'formatTimePeriod() rounding (>=1h), avoidseconds'
- ),
- array(
- 7199.55,
- array( 'avoid' => 'avoidseconds', 'noabbrevs' => true ),
- '2 hours 0 minutes',
- 'formatTimePeriod() rounding (>=1h), avoidseconds'
- ),
- array(
- 7199.55,
- 'avoidminutes',
- '2 h 0 min',
- 'formatTimePeriod() rounding (>=1h), avoidminutes'
- ),
- array(
- 7199.55,
- array( 'avoid' => 'avoidminutes', 'noabbrevs' => true ),
- '2 hours 0 minutes',
- 'formatTimePeriod() rounding (>=1h), avoidminutes'
- ),
- array(
- 172799.55,
- 'avoidseconds',
- '48 h 0 min',
- 'formatTimePeriod() rounding (=48h), avoidseconds'
- ),
- array(
- 172799.55,
- array( 'avoid' => 'avoidseconds', 'noabbrevs' => true ),
- '48 hours 0 minutes',
- 'formatTimePeriod() rounding (=48h), avoidseconds'
- ),
- array(
- 259199.55,
- 'avoidminutes',
- '3 d 0 h',
- 'formatTimePeriod() rounding (>48h), avoidminutes'
- ),
- array(
- 259199.55,
- array( 'avoid' => 'avoidminutes', 'noabbrevs' => true ),
- '3 days 0 hours',
- 'formatTimePeriod() rounding (>48h), avoidminutes'
- ),
- array(
- 176399.55,
- 'avoidseconds',
- '2 d 1 h 0 min',
- 'formatTimePeriod() rounding (>48h), avoidseconds'
- ),
- array(
- 176399.55,
- array( 'avoid' => 'avoidseconds', 'noabbrevs' => true ),
- '2 days 1 hour 0 minutes',
- 'formatTimePeriod() rounding (>48h), avoidseconds'
- ),
- array(
- 176399.55,
- 'avoidminutes',
- '2 d 1 h',
- 'formatTimePeriod() rounding (>48h), avoidminutes'
- ),
- array(
- 176399.55,
- array( 'avoid' => 'avoidminutes', 'noabbrevs' => true ),
- '2 days 1 hour',
- 'formatTimePeriod() rounding (>48h), avoidminutes'
- ),
- array(
- 259199.55,
- 'avoidseconds',
- '3 d 0 h 0 min',
- 'formatTimePeriod() rounding (>48h), avoidseconds'
- ),
- array(
- 259199.55,
- array( 'avoid' => 'avoidseconds', 'noabbrevs' => true ),
- '3 days 0 hours 0 minutes',
- 'formatTimePeriod() rounding (>48h), avoidseconds'
- ),
- array(
- 172801.55,
- 'avoidseconds',
- '2 d 0 h 0 min',
- 'formatTimePeriod() rounding, (>48h), avoidseconds'
- ),
- array(
- 172801.55,
- array( 'avoid' => 'avoidseconds', 'noabbrevs' => true ),
- '2 days 0 hours 0 minutes',
- 'formatTimePeriod() rounding, (>48h), avoidseconds'
- ),
- array(
- 176460.55,
- array(),
- '2 d 1 h 1 min 1 s',
- 'formatTimePeriod() rounding, recursion, (>48h)'
- ),
- array(
- 176460.55,
- array( 'noabbrevs' => true ),
- '2 days 1 hour 1 minute 1 second',
- 'formatTimePeriod() rounding, recursion, (>48h)'
- ),
- );
-
- }
-
- function testTruncate() {
- $this->assertEquals(
- "XXX",
- $this->lang->truncate( "1234567890", 0, 'XXX' ),
- 'truncate prefix, len 0, small ellipsis'
- );
-
- $this->assertEquals(
- "12345XXX",
- $this->lang->truncate( "1234567890", 8, 'XXX' ),
- 'truncate prefix, small ellipsis'
- );
-
- $this->assertEquals(
- "123456789",
- $this->lang->truncate( "123456789", 5, 'XXXXXXXXXXXXXXX' ),
- 'truncate prefix, large ellipsis'
- );
-
- $this->assertEquals(
- "XXX67890",
- $this->lang->truncate( "1234567890", -8, 'XXX' ),
- 'truncate suffix, small ellipsis'
- );
-
- $this->assertEquals(
- "123456789",
- $this->lang->truncate( "123456789", -5, 'XXXXXXXXXXXXXXX' ),
- 'truncate suffix, large ellipsis'
- );
- }
-
- /**
- * @dataProvider provideHTMLTruncateData()
- */
- function testTruncateHtml( $len, $ellipsis, $input, $expected ) {
- // Actual HTML...
- $this->assertEquals(
- $expected,
- $this->lang->truncateHTML( $input, $len, $ellipsis )
- );
- }
-
- /**
- * Array format is ($len, $ellipsis, $input, $expected)
- */
- function provideHTMLTruncateData() {
- return array(
- array( 0, 'XXX', "1234567890", "XXX" ),
- array( 8, 'XXX', "1234567890", "12345XXX" ),
- array( 5, 'XXXXXXXXXXXXXXX', '1234567890', "1234567890" ),
- array( 2, '***',
- '<p><span style="font-weight:bold;"></span></p>',
- '<p><span style="font-weight:bold;"></span></p>',
- ),
- array( 2, '***',
- '<p><span style="font-weight:bold;">123456789</span></p>',
- '<p><span style="font-weight:bold;">***</span></p>',
- ),
- array( 2, '***',
- '<p><span style="font-weight:bold;">&nbsp;23456789</span></p>',
- '<p><span style="font-weight:bold;">***</span></p>',
- ),
- array( 3, '***',
- '<p><span style="font-weight:bold;">123456789</span></p>',
- '<p><span style="font-weight:bold;">***</span></p>',
- ),
- array( 4, '***',
- '<p><span style="font-weight:bold;">123456789</span></p>',
- '<p><span style="font-weight:bold;">1***</span></p>',
- ),
- array( 5, '***',
- '<tt><span style="font-weight:bold;">123456789</span></tt>',
- '<tt><span style="font-weight:bold;">12***</span></tt>',
- ),
- array( 6, '***',
- '<p><a href="www.mediawiki.org">123456789</a></p>',
- '<p><a href="www.mediawiki.org">123***</a></p>',
- ),
- array( 6, '***',
- '<p><a href="www.mediawiki.org">12&nbsp;456789</a></p>',
- '<p><a href="www.mediawiki.org">12&nbsp;***</a></p>',
- ),
- array( 7, '***',
- '<small><span style="font-weight:bold;">123<p id="#moo">456</p>789</span></small>',
- '<small><span style="font-weight:bold;">123<p id="#moo">4***</p></span></small>',
- ),
- array( 8, '***',
- '<div><span style="font-weight:bold;">123<span>4</span>56789</span></div>',
- '<div><span style="font-weight:bold;">123<span>4</span>5***</span></div>',
- ),
- array( 9, '***',
- '<p><table style="font-weight:bold;"><tr><td>123456789</td></tr></table></p>',
- '<p><table style="font-weight:bold;"><tr><td>123456789</td></tr></table></p>',
- ),
- array( 10, '***',
- '<p><font style="font-weight:bold;">123456789</font></p>',
- '<p><font style="font-weight:bold;">123456789</font></p>',
- ),
- );
- }
-
- /**
- * Test Language::isValidBuiltInCode()
- * @dataProvider provideLanguageCodes
- */
- function testBuiltInCodeValidation( $code, $message = '' ) {
- $this->assertTrue(
- (bool) Language::isValidBuiltInCode( $code ),
- "validating code $code $message"
- );
- }
-
- function testBuiltInCodeValidationRejectUnderscore() {
- $this->assertFalse(
- (bool) Language::isValidBuiltInCode( 'be_tarask' ),
- "reject underscore in language code"
- );
- }
-
- function provideLanguageCodes() {
- return array(
- array( 'fr' , 'Two letters, minor case' ),
- array( 'EN' , 'Two letters, upper case' ),
- array( 'tyv' , 'Three letters' ),
- array( 'tokipona' , 'long language code' ),
- array( 'be-tarask', 'With dash' ),
- array( 'Zh-classical', 'Begin with upper case, dash' ),
- array( 'Be-x-old', 'With extension (two dashes)' ),
- );
- }
-
- /**
- * @dataProvider provideSprintfDateSamples
- */
- function testSprintfDate( $format, $ts, $expected, $msg ) {
- $this->assertEquals(
- $expected,
- $this->lang->sprintfDate( $format, $ts ),
- "sprintfDate('$format', '$ts'): $msg"
- );
- }
- /**
- * bug 33454. sprintfDate should always use UTC.
- * @dataProvider provideSprintfDateSamples
- */
- function testSprintfDateTZ( $format, $ts, $expected, $msg ) {
- $oldTZ = date_default_timezone_get();
- $res = date_default_timezone_set( 'Asia/Seoul' );
- if ( !$res ) {
- $this->markTestSkipped( "Error setting Timezone" );
- }
-
- $this->assertEquals(
- $expected,
- $this->lang->sprintfDate( $format, $ts ),
- "sprintfDate('$format', '$ts'): $msg"
- );
-
- date_default_timezone_set( $oldTZ );
- }
-
- function provideSprintfDateSamples() {
- return array(
- array(
- 'xiY',
- '20111212000000',
- '1390', // note because we're testing English locale we get Latin-standard digits
- 'Iranian calendar full year'
- ),
- array(
- 'xiy',
- '20111212000000',
- '90',
- 'Iranian calendar short year'
- ),
- array(
- 'o',
- '20120101235000',
- '2011',
- 'ISO 8601 (week) year'
- ),
- array(
- 'W',
- '20120101235000',
- '52',
- 'Week number'
- ),
- array(
- 'W',
- '20120102235000',
- '1',
- 'Week number'
- ),
- array(
- 'o-\\WW-N',
- '20091231235000',
- '2009-W53-4',
- 'leap week'
- ),
- // What follows is mostly copied from http://www.mediawiki.org/wiki/Help:Extension:ParserFunctions#.23time
- array(
- 'Y',
- '20120102090705',
- '2012',
- 'Full year'
- ),
- array(
- 'y',
- '20120102090705',
- '12',
- '2 digit year'
- ),
- array(
- 'L',
- '20120102090705',
- '1',
- 'Leap year'
- ),
- array(
- 'n',
- '20120102090705',
- '1',
- 'Month index, not zero pad'
- ),
- array(
- 'N',
- '20120102090705',
- '01',
- 'Month index. Zero pad'
- ),
- array(
- 'M',
- '20120102090705',
- 'Jan',
- 'Month abbrev'
- ),
- array(
- 'F',
- '20120102090705',
- 'January',
- 'Full month'
- ),
- array(
- 'xg',
- '20120102090705',
- 'January',
- 'Genitive month name (same in EN)'
- ),
- array(
- 'j',
- '20120102090705',
- '2',
- 'Day of month (not zero pad)'
- ),
- array(
- 'd',
- '20120102090705',
- '02',
- 'Day of month (zero-pad)'
- ),
- array(
- 'z',
- '20120102090705',
- '1',
- 'Day of year (zero-indexed)'
- ),
- array(
- 'D',
- '20120102090705',
- 'Mon',
- 'Day of week (abbrev)'
- ),
- array(
- 'l',
- '20120102090705',
- 'Monday',
- 'Full day of week'
- ),
- array(
- 'N',
- '20120101090705',
- '7',
- 'Day of week (Mon=1, Sun=7)'
- ),
- array(
- 'w',
- '20120101090705',
- '0',
- 'Day of week (Sun=0, Sat=6)'
- ),
- array(
- 'N',
- '20120102090705',
- '1',
- 'Day of week'
- ),
- array(
- 'a',
- '20120102090705',
- 'am',
- 'am vs pm'
- ),
- array(
- 'A',
- '20120102120000',
- 'PM',
- 'AM vs PM'
- ),
- array(
- 'a',
- '20120102000000',
- 'am',
- 'AM vs PM'
- ),
- array(
- 'g',
- '20120102090705',
- '9',
- '12 hour, not Zero'
- ),
- array(
- 'h',
- '20120102090705',
- '09',
- '12 hour, zero padded'
- ),
- array(
- 'G',
- '20120102090705',
- '9',
- '24 hour, not zero'
- ),
- array(
- 'H',
- '20120102090705',
- '09',
- '24 hour, zero'
- ),
- array(
- 'H',
- '20120102110705',
- '11',
- '24 hour, zero'
- ),
- array(
- 'i',
- '20120102090705',
- '07',
- 'Minutes'
- ),
- array(
- 's',
- '20120102090705',
- '05',
- 'seconds'
- ),
- array(
- 'U',
- '20120102090705',
- '1325495225',
- 'unix time'
- ),
- array(
- 't',
- '20120102090705',
- '31',
- 'Days in current month'
- ),
- array(
- 'c',
- '20120102090705',
- '2012-01-02T09:07:05+00:00',
- 'ISO 8601 timestamp'
- ),
- array(
- 'r',
- '20120102090705',
- 'Mon, 02 Jan 2012 09:07:05 +0000',
- 'RFC 5322'
- ),
- array(
- 'xmj xmF xmn xmY',
- '20120102090705',
- '7 Safar 2 1433',
- 'Islamic'
- ),
- array(
- 'xij xiF xin xiY',
- '20120102090705',
- '12 Dey 10 1390',
- 'Iranian'
- ),
- array(
- 'xjj xjF xjn xjY',
- '20120102090705',
- '7 Tevet 4 5772',
- 'Hebrew'
- ),
- array(
- 'xjt',
- '20120102090705',
- '29',
- 'Hebrew number of days in month'
- ),
- array(
- 'xjx',
- '20120102090705',
- 'Tevet',
- 'Hebrew genitive month name (No difference in EN)'
- ),
- array(
- 'xkY',
- '20120102090705',
- '2555',
- 'Thai year'
- ),
- array(
- 'xoY',
- '20120102090705',
- '101',
- 'Minguo'
- ),
- array(
- 'xtY',
- '20120102090705',
- '平成24',
- 'nengo'
- ),
- array(
- 'xrxkYY',
- '20120102090705',
- 'MMDLV2012',
- 'Roman numerals'
- ),
- array(
- 'xhxjYY',
- '20120102090705',
- 'ה\'תשע"ב2012',
- 'Hebrew numberals'
- ),
- array(
- 'xnY',
- '20120102090705',
- '2012',
- 'Raw numerals (doesn\'t mean much in EN)'
- ),
- array(
- '[[Y "(yea"\\r)]] \\"xx\\"',
- '20120102090705',
- '[[2012 (year)]] "x"',
- 'Various escaping'
- ),
-
- );
- }
-
- /**
- * @dataProvider provideFormatSizes
- */
- function testFormatSize( $size, $expected, $msg ) {
- $this->assertEquals(
- $expected,
- $this->lang->formatSize( $size ),
- "formatSize('$size'): $msg"
- );
- }
-
- function provideFormatSizes() {
- return array(
- array(
- 0,
- "0 B",
- "Zero bytes"
- ),
- array(
- 1024,
- "1 KB",
- "1 kilobyte"
- ),
- array(
- 1024 * 1024,
- "1 MB",
- "1,024 megabytes"
- ),
- array(
- 1024 * 1024 * 1024,
- "1 GB",
- "1 gigabytes"
- ),
- array(
- pow( 1024, 4 ),
- "1 TB",
- "1 terabyte"
- ),
- array(
- pow( 1024, 5 ),
- "1 PB",
- "1 petabyte"
- ),
- array(
- pow( 1024, 6 ),
- "1 EB",
- "1,024 exabyte"
- ),
- array(
- pow( 1024, 7 ),
- "1 ZB",
- "1 zetabyte"
- ),
- array(
- pow( 1024, 8 ),
- "1 YB",
- "1 yottabyte"
- ),
- // How big!? THIS BIG!
- );
- }
-
- /**
- * @dataProvider provideFormatBitrate
- */
- function testFormatBitrate( $bps, $expected, $msg ) {
- $this->assertEquals(
- $expected,
- $this->lang->formatBitrate( $bps ),
- "formatBitrate('$bps'): $msg"
- );
- }
-
- function provideFormatBitrate() {
- return array(
- array(
- 0,
- "0 bps",
- "0 bits per second"
- ),
- array(
- 999,
- "999 bps",
- "999 bits per second"
- ),
- array(
- 1000,
- "1 kbps",
- "1 kilobit per second"
- ),
- array(
- 1000 * 1000,
- "1 Mbps",
- "1 megabit per second"
- ),
- array(
- pow( 10, 9 ),
- "1 Gbps",
- "1 gigabit per second"
- ),
- array(
- pow( 10, 12 ),
- "1 Tbps",
- "1 terabit per second"
- ),
- array(
- pow( 10, 15 ),
- "1 Pbps",
- "1 petabit per second"
- ),
- array(
- pow( 10, 18 ),
- "1 Ebps",
- "1 exabit per second"
- ),
- array(
- pow( 10, 21 ),
- "1 Zbps",
- "1 zetabit per second"
- ),
- array(
- pow( 10, 24 ),
- "1 Ybps",
- "1 yottabit per second"
- ),
- array(
- pow( 10, 27 ),
- "1,000 Ybps",
- "1,000 yottabits per second"
- ),
- );
- }
-
-
-
- /**
- * @dataProvider provideFormatDuration
- */
- function testFormatDuration( $duration, $expected, $intervals = array() ) {
- $this->assertEquals(
- $expected,
- $this->lang->formatDuration( $duration, $intervals ),
- "formatDuration('$duration'): $expected"
- );
- }
-
- function provideFormatDuration() {
- return array(
- array(
- 0,
- '0 seconds',
- ),
- array(
- 1,
- '1 second',
- ),
- array(
- 2,
- '2 seconds',
- ),
- array(
- 60,
- '1 minute',
- ),
- array(
- 2 * 60,
- '2 minutes',
- ),
- array(
- 3600,
- '1 hour',
- ),
- array(
- 2 * 3600,
- '2 hours',
- ),
- array(
- 24 * 3600,
- '1 day',
- ),
- array(
- 2 * 86400,
- '2 days',
- ),
- array(
- 365.25 * 86400, // 365.25 * 86400 = 31557600
- '1 year',
- ),
- array(
- 2 * 31557600,
- '2 years',
- ),
- array(
- 10 * 31557600,
- '1 decade',
- ),
- array(
- 20 * 31557600,
- '2 decades',
- ),
- array(
- 100 * 31557600,
- '1 century',
- ),
- array(
- 200 * 31557600,
- '2 centuries',
- ),
- array(
- 1000 * 31557600,
- '1 millennium',
- ),
- array(
- 2000 * 31557600,
- '2 millennia',
- ),
- array(
- 9001,
- '2 hours, 30 minutes and 1 second'
- ),
- array(
- 3601,
- '1 hour and 1 second'
- ),
- array(
- 31557600 + 2 * 86400 + 9000,
- '1 year, 2 days, 2 hours and 30 minutes'
- ),
- array(
- 42 * 1000 * 31557600 + 42,
- '42 millennia and 42 seconds'
- ),
- array(
- 60,
- '60 seconds',
- array( 'seconds' ),
- ),
- array(
- 61,
- '61 seconds',
- array( 'seconds' ),
- ),
- array(
- 1,
- '1 second',
- array( 'seconds' ),
- ),
- array(
- 31557600 + 2 * 86400 + 9000,
- '1 year, 2 days and 150 minutes',
- array( 'years', 'days', 'minutes' ),
- ),
- array(
- 42,
- '0 days',
- array( 'years', 'days' ),
- ),
- array(
- 31557600 + 2 * 86400 + 9000,
- '1 year, 2 days and 150 minutes',
- array( 'minutes', 'days', 'years' ),
- ),
- array(
- 42,
- '0 days',
- array( 'days', 'years' ),
- ),
- );
- }
-
- /**
- * @dataProvider provideCheckTitleEncodingData
- */
- function testCheckTitleEncoding( $s ) {
- $this->assertEquals(
- $s,
- $this->lang->checkTitleEncoding($s),
- "checkTitleEncoding('$s')"
- );
- }
-
- function provideCheckTitleEncodingData() {
- return array (
- array( "" ),
- array( "United States of America" ), // 7bit ASCII
- array( rawurldecode( "S%C3%A9rie%20t%C3%A9l%C3%A9vis%C3%A9e" ) ),
- array(
- rawurldecode(
- "Acteur%7CAlbert%20Robbins%7CAnglais%7CAnn%20Donahue%7CAnthony%20E.%20Zuiker%7CCarol%20Mendelsohn"
- )
- ),
- // The following two data sets come from bug 36839. They fail if checkTitleEncoding uses a regexp to test for
- // valid UTF-8 encoding and the pcre.recursion_limit is low (like, say, 1024). They succeed if checkTitleEncoding
- // uses mb_check_encoding for its test.
- array(
- rawurldecode(
- "Acteur%7CAlbert%20Robbins%7CAnglais%7CAnn%20Donahue%7CAnthony%20E.%20Zuiker%7CCarol%20Mendelsohn%7C"
- . "Catherine%20Willows%7CDavid%20Hodges%7CDavid%20Phillips%7CGil%20Grissom%7CGreg%20Sanders%7CHodges%7C"
- . "Internet%20Movie%20Database%7CJim%20Brass%7CLady%20Heather%7C"
- . "Les%20Experts%20(s%C3%A9rie%20t%C3%A9l%C3%A9vis%C3%A9e)%7CLes%20Experts%20:%20Manhattan%7C"
- . "Les%20Experts%20:%20Miami%7CListe%20des%20personnages%20des%20Experts%7C"
- . "Liste%20des%20%C3%A9pisodes%20des%20Experts%7CMod%C3%A8le%20discussion:Palette%20Les%20Experts%7C"
- . "Nick%20Stokes%7CPersonnage%20de%20fiction%7CPersonnage%20fictif%7CPersonnage%20de%20fiction%7C"
- . "Personnages%20r%C3%A9currents%20dans%20Les%20Experts%7CRaymond%20Langston%7CRiley%20Adams%7C"
- . "Saison%201%20des%20Experts%7CSaison%2010%20des%20Experts%7CSaison%2011%20des%20Experts%7C"
- . "Saison%2012%20des%20Experts%7CSaison%202%20des%20Experts%7CSaison%203%20des%20Experts%7C"
- . "Saison%204%20des%20Experts%7CSaison%205%20des%20Experts%7CSaison%206%20des%20Experts%7C"
- . "Saison%207%20des%20Experts%7CSaison%208%20des%20Experts%7CSaison%209%20des%20Experts%7C"
- . "Sara%20Sidle%7CSofia%20Curtis%7CS%C3%A9rie%20t%C3%A9l%C3%A9vis%C3%A9e%7CWallace%20Langham%7C"
- . "Warrick%20Brown%7CWendy%20Simms%7C%C3%89tats-Unis"
- ),
- ),
- array(
- rawurldecode(
- "Mod%C3%A8le%3AArrondissements%20homonymes%7CMod%C3%A8le%3ABandeau%20standard%20pour%20page%20d'homonymie%7C"
- . "Mod%C3%A8le%3ABatailles%20homonymes%7CMod%C3%A8le%3ACantons%20homonymes%7C"
- . "Mod%C3%A8le%3ACommunes%20fran%C3%A7aises%20homonymes%7CMod%C3%A8le%3AFilms%20homonymes%7C"
- . "Mod%C3%A8le%3AGouvernements%20homonymes%7CMod%C3%A8le%3AGuerres%20homonymes%7CMod%C3%A8le%3AHomonymie%7C"
- . "Mod%C3%A8le%3AHomonymie%20bateau%7CMod%C3%A8le%3AHomonymie%20d'%C3%A9tablissements%20scolaires%20ou"
- . "%20universitaires%7CMod%C3%A8le%3AHomonymie%20d'%C3%AEles%7CMod%C3%A8le%3AHomonymie%20de%20clubs%20sportifs%7C"
- . "Mod%C3%A8le%3AHomonymie%20de%20comt%C3%A9s%7CMod%C3%A8le%3AHomonymie%20de%20monument%7C"
- . "Mod%C3%A8le%3AHomonymie%20de%20nom%20romain%7CMod%C3%A8le%3AHomonymie%20de%20parti%20politique%7C"
- . "Mod%C3%A8le%3AHomonymie%20de%20route%7CMod%C3%A8le%3AHomonymie%20dynastique%7C"
- . "Mod%C3%A8le%3AHomonymie%20vid%C3%A9oludique%7CMod%C3%A8le%3AHomonymie%20%C3%A9difice%20religieux%7C"
- . "Mod%C3%A8le%3AInternationalisation%7CMod%C3%A8le%3AIsom%C3%A9rie%7CMod%C3%A8le%3AParonymie%7C"
- . "Mod%C3%A8le%3APatronyme%7CMod%C3%A8le%3APatronyme%20basque%7CMod%C3%A8le%3APatronyme%20italien%7C"
- . "Mod%C3%A8le%3APatronymie%7CMod%C3%A8le%3APersonnes%20homonymes%7CMod%C3%A8le%3ASaints%20homonymes%7C"
- . "Mod%C3%A8le%3ATitres%20homonymes%7CMod%C3%A8le%3AToponymie%7CMod%C3%A8le%3AUnit%C3%A9s%20homonymes%7C"
- . "Mod%C3%A8le%3AVilles%20homonymes%7CMod%C3%A8le%3A%C3%89difices%20religieux%20homonymes"
- )
- )
- );
- }
-
- /**
- * @dataProvider provideRomanNumeralsData
- */
- function testRomanNumerals( $num, $numerals ) {
- $this->assertEquals(
- $numerals,
- Language::romanNumeral( $num ),
- "romanNumeral('$num')"
- );
- }
-
- function provideRomanNumeralsData() {
- return array(
- array( 1, 'I' ),
- array( 2, 'II' ),
- array( 3, 'III' ),
- array( 4, 'IV' ),
- array( 5, 'V' ),
- array( 6, 'VI' ),
- array( 7, 'VII' ),
- array( 8, 'VIII' ),
- array( 9, 'IX' ),
- array( 10, 'X' ),
- array( 20, 'XX' ),
- array( 30, 'XXX' ),
- array( 40, 'XL' ),
- array( 49, 'XLIX' ),
- array( 50, 'L' ),
- array( 60, 'LX' ),
- array( 70, 'LXX' ),
- array( 80, 'LXXX' ),
- array( 90, 'XC' ),
- array( 99, 'XCIX' ),
- array( 100, 'C' ),
- array( 200, 'CC' ),
- array( 300, 'CCC' ),
- array( 400, 'CD' ),
- array( 500, 'D' ),
- array( 600, 'DC' ),
- array( 700, 'DCC' ),
- array( 800, 'DCCC' ),
- array( 900, 'CM' ),
- array( 999, 'CMXCIX' ),
- array( 1000, 'M' ),
- array( 1989, 'MCMLXXXIX' ),
- array( 2000, 'MM' ),
- array( 3000, 'MMM' ),
- array( 4000, 'MMMM' ),
- array( 5000, 'MMMMM' ),
- array( 6000, 'MMMMMM' ),
- array( 7000, 'MMMMMMM' ),
- array( 8000, 'MMMMMMMM' ),
- array( 9000, 'MMMMMMMMM' ),
- array( 9999, 'MMMMMMMMMCMXCIX'),
- array( 10000, 'MMMMMMMMMM' ),
- );
- }
-}
-
diff --git a/tests/phpunit/languages/LanguageTiTest.php b/tests/phpunit/languages/LanguageTiTest.php
deleted file mode 100644
index 4bfaa009..00000000
--- a/tests/phpunit/languages/LanguageTiTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageTi.php */
-class LanguageTiTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Ti' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageTlTest.php b/tests/phpunit/languages/LanguageTlTest.php
deleted file mode 100644
index a1facd14..00000000
--- a/tests/phpunit/languages/LanguageTlTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageTl.php */
-class LanguageTlTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Tl' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageTrTest.php b/tests/phpunit/languages/LanguageTrTest.php
deleted file mode 100644
index bda4c9d9..00000000
--- a/tests/phpunit/languages/LanguageTrTest.php
+++ /dev/null
@@ -1,68 +0,0 @@
-<?php
-/**
- * @author Antoine Musso
- * @copyright Copyright © 2011, Antoine Musso
- * @file
- */
-
-/** Tests for MediaWiki languages/LanguageTr.php */
-class LanguageTrTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Tr' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /**
- * See @bug 28040
- * Credits to irc://irc.freenode.net/wikipedia-tr users:
- * - berm
- * - []LuCkY[]
- * - Emperyan
- * @see http://en.wikipedia.org/wiki/Dotted_and_dotless_I
- * @dataProvider provideDottedAndDotlessI
- */
- function testDottedAndDotlessI( $func, $input, $inputCase, $expected ) {
- if( $func == 'ucfirst' ) {
- $res = $this->lang->ucfirst( $input );
- } elseif( $func == 'lcfirst' ) {
- $res = $this->lang->lcfirst( $input );
- } else {
- throw new MWException( __METHOD__ . " given an invalid function name '$func'" );
- }
-
- $msg = "Converting $inputCase case '$input' with $func should give '$expected'";
-
- $this->assertEquals( $expected, $res, $msg );
- }
-
- function provideDottedAndDotlessI() {
- return array(
- # function, input, input case, expected
- # Case changed:
- array( 'ucfirst', 'ı', 'lower', 'I' ),
- array( 'ucfirst', 'i', 'lower', 'İ' ),
- array( 'lcfirst', 'I', 'upper', 'ı' ),
- array( 'lcfirst', 'İ', 'upper', 'i' ),
-
- # Already using the correct case
- array( 'ucfirst', 'I', 'upper', 'I' ),
- array( 'ucfirst', 'İ', 'upper', 'İ' ),
- array( 'lcfirst', 'ı', 'lower', 'ı' ),
- array( 'lcfirst', 'i', 'lower', 'i' ),
-
- # A real example taken from bug 28040 using
- # http://tr.wikipedia.org/wiki/%C4%B0Phone
- array( 'lcfirst', 'iPhone', 'lower', 'iPhone' ),
-
- # next case is valid in Turkish but are different words if we
- # consider IPhone is English!
- array( 'lcfirst', 'IPhone', 'upper', 'ıPhone' ),
-
- );
- }
-
-}
diff --git a/tests/phpunit/languages/LanguageUkTest.php b/tests/phpunit/languages/LanguageUkTest.php
deleted file mode 100644
index 60fafb0d..00000000
--- a/tests/phpunit/languages/LanguageUkTest.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * based on LanguageBe_tarask.php
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageUk.php */
-class LanguageUkTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Uk' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providePluralFourForms */
- function testPluralFourForms( $result, $value ) {
- $forms = array( 'one', 'few', 'many', 'other' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providePluralFourForms() {
- return array (
- array( 'one', 1 ),
- array( 'many', 11 ),
- array( 'one', 91 ),
- array( 'one', 121 ),
- array( 'few', 2 ),
- array( 'few', 3 ),
- array( 'few', 4 ),
- array( 'few', 334 ),
- array( 'many', 5 ),
- array( 'many', 15 ),
- array( 'many', 120 ),
- );
- }
- /** @dataProvider providePluralTwoForms */
- function testPluralTwoForms( $result, $value ) {
- $forms = array( 'one', 'several' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
- function providePluralTwoForms() {
- return array (
- array( 'one', 1 ),
- array( 'several', 11 ),
- array( 'several', 91 ),
- array( 'several', 121 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/LanguageUzTest.php b/tests/phpunit/languages/LanguageUzTest.php
deleted file mode 100644
index 72387283..00000000
--- a/tests/phpunit/languages/LanguageUzTest.php
+++ /dev/null
@@ -1,120 +0,0 @@
-<?php
-/**
- * PHPUnit tests for the Uzbek language.
- * The language can be represented using two scripts:
- * - Latin (uz-latn)
- * - Cyrillic (uz-cyrl)
- *
- * @author Robin Pepermans
- * @author Antoine Musso <hashar at free dot fr>
- * @copyright Copyright © 2012, Robin Pepermans
- * @copyright Copyright © 2011, Antoine Musso <hashar at free dot fr>
- * @file
- */
-
-require_once dirname( __DIR__ ) . '/bootstrap.php';
-
-/** Tests for MediaWiki languages/LanguageUz.php */
-class LanguageUzTest extends MediaWikiTestCase {
- /* Language object. Initialized before each test */
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'uz' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /**
- * @author Nikola Smolenski
- */
- function testConversionToCyrillic() {
- // A convertion of Latin to Cyrillic
- $this->assertEquals( 'абвгғ',
- $this->convertToCyrillic( 'abvggʻ' )
- );
- // Same as above, but assert that -{}-s must be removed and not converted
- $this->assertEquals( 'ljабnjвгўоdb',
- $this->convertToCyrillic( '-{lj}-ab-{nj}-vgoʻo-{db}-' )
- );
- // A simple convertion of Cyrillic to Cyrillic
- $this->assertEquals( 'абвг',
- $this->convertToCyrillic( 'абвг' )
- );
- // Same as above, but assert that -{}-s must be removed and not converted
- $this->assertEquals( 'ljабnjвгdaž',
- $this->convertToCyrillic( '-{lj}-аб-{nj}-вг-{da}-ž' )
- );
- }
-
- function testConversionToLatin() {
- // A simple convertion of Latin to Latin
- $this->assertEquals( 'abdef',
- $this->convertToLatin( 'abdef' )
- );
- // A convertion of Cyrillic to Latin
- $this->assertEquals( 'gʻabtsdOʻQyo',
- $this->convertToLatin( 'ғабцдЎҚё' )
- );
- }
-
- ##### HELPERS #####################################################
- /**
- * Wrapper to verify text stay the same after applying conversion
- * @param $text string Text to convert
- * @param $variant string Language variant 'uz-cyrl' or 'uz-latn'
- * @param $msg string Optional message
- */
- function assertUnConverted( $text, $variant, $msg = '' ) {
- $this->assertEquals(
- $text,
- $this->convertTo( $text, $variant ),
- $msg
- );
- }
- /**
- * Wrapper to verify a text is different once converted to a variant.
- * @param $text string Text to convert
- * @param $variant string Language variant 'uz-cyrl' or 'uz-latn'
- * @param $msg string Optional message
- */
- function assertConverted( $text, $variant, $msg = '' ) {
- $this->assertNotEquals(
- $text,
- $this->convertTo( $text, $variant ),
- $msg
- );
- }
-
- /**
- * Verifiy the given Cyrillic text is not converted when using
- * using the cyrillic variant and converted to Latin when using
- * the Latin variant.
- */
- function assertCyrillic( $text, $msg = '' ) {
- $this->assertUnConverted( $text, 'uz-cyrl', $msg );
- $this->assertConverted( $text, 'uz-latn', $msg );
- }
- /**
- * Verifiy the given Latin text is not converted when using
- * using the Latin variant and converted to Cyrillic when using
- * the Cyrillic variant.
- */
- function assertLatin( $text, $msg = '' ) {
- $this->assertUnConverted( $text, 'uz-latn', $msg );
- $this->assertConverted( $text, 'uz-cyrl', $msg );
- }
-
-
- /** Wrapper for converter::convertTo() method*/
- function convertTo( $text, $variant ) {
- return $this->lang->mConverter->convertTo( $text, $variant );
- }
- function convertToCyrillic( $text ) {
- return $this->convertTo( $text, 'uz-cyrl' );
- }
- function convertToLatin( $text ) {
- return $this->convertTo( $text, 'uz-latn' );
- }
-}
diff --git a/tests/phpunit/languages/LanguageWaTest.php b/tests/phpunit/languages/LanguageWaTest.php
deleted file mode 100644
index 172f19b9..00000000
--- a/tests/phpunit/languages/LanguageWaTest.php
+++ /dev/null
@@ -1,32 +0,0 @@
-<?php
-/**
- * @author Amir E. Aharoni
- * @copyright Copyright © 2012, Amir E. Aharoni
- * @file
- */
-
-/** Tests for MediaWiki languages/classes/LanguageWa.php */
-class LanguageWaTest extends MediaWikiTestCase {
- private $lang;
-
- function setUp() {
- $this->lang = Language::factory( 'Wa' );
- }
- function tearDown() {
- unset( $this->lang );
- }
-
- /** @dataProvider providerPlural */
- function testPlural( $result, $value ) {
- $forms = array( 'one', 'many' );
- $this->assertEquals( $result, $this->lang->convertPlural( $value, $forms ) );
- }
-
- function providerPlural() {
- return array (
- array( 'one', 0 ),
- array( 'one', 1 ),
- array( 'many', 2 ),
- );
- }
-}
diff --git a/tests/phpunit/languages/utils/CLDRPluralRuleEvaluatorTest.php b/tests/phpunit/languages/utils/CLDRPluralRuleEvaluatorTest.php
deleted file mode 100644
index 033164b0..00000000
--- a/tests/phpunit/languages/utils/CLDRPluralRuleEvaluatorTest.php
+++ /dev/null
@@ -1,95 +0,0 @@
-<?php
-/**
- * @author Niklas Laxström
- * @file
- */
-
-class CLDRPluralRuleEvaluatorTest extends MediaWikiTestCase {
- /**
- * @dataProvider validTestCases
- */
- function testValidRules( $expected, $rules, $number, $comment ) {
- $result = CLDRPluralRuleEvaluator::evaluate( $number, (array) $rules );
- $this->assertEquals( $expected, $result, $comment );
- }
-
- /**
- * @dataProvider invalidTestCases
- * @expectedException CLDRPluralRuleError
- */
- function testInvalidRules( $rules, $comment ) {
- CLDRPluralRuleEvaluator::evaluate( 1, (array) $rules );
- }
-
- function validTestCases() {
- $tests = array(
- # expected, number, rule, comment
- array( 0, 'n is 1', 1, 'integer number and is' ),
- array( 0, 'n is 1', "1", 'string integer number and is' ),
- array( 0, 'n is 1', 1.0, 'float number and is' ),
- array( 0, 'n is 1', "1.0", 'string float number and is' ),
- array( 1, 'n is 1', 1.1, 'float number and is' ),
- array( 1, 'n is 1', 2, 'float number and is' ),
-
- array( 0, 'n in 1,3,5', 3, '' ),
- array( 1, 'n not in 1,3,5', 5, '' ),
-
- array( 1, 'n in 1,3,5', 2, '' ),
- array( 0, 'n not in 1,3,5', 4, '' ),
-
- array( 0, 'n in 1..3', 2, '' ),
- array( 0, 'n in 1..3', 3, 'in is inclusive' ),
- array( 1, 'n in 1..3', 0, '' ),
-
- array( 1, 'n not in 1..3', 2, '' ),
- array( 1, 'n not in 1..3', 3, 'in is inclusive' ),
- array( 0, 'n not in 1..3', 0, '' ),
-
- array( 1, 'n is not 1 and n is not 2 and n is not 3', 1, 'and relation' ),
- array( 0, 'n is not 1 and n is not 2 and n is not 4', 3, 'and relation' ),
-
- array( 0, 'n is not 1 or n is 1', 1, 'or relation' ),
- array( 1, 'n is 1 or n is 2', 3, 'or relation' ),
-
- array( 0, 'n is 1', 1, 'extra whitespace' ),
-
- array( 0, 'n mod 3 is 1', 7, 'mod' ),
- array( 0, 'n mod 3 is not 1', 4.3, 'mod with floats' ),
-
- array( 0, 'n within 1..3', 2, 'within with integer' ),
- array( 0, 'n within 1..3', 2.5, 'within with float' ),
- array( 0, 'n in 1..3', 2, 'in with integer' ),
- array( 1, 'n in 1..3', 2.5, 'in with float' ),
-
- array( 0, 'n in 3 or n is 4 and n is 5', 3, 'and binds more tightly than or' ),
- array( 1, 'n is 3 or n is 4 and n is 5', 4, 'and binds more tightly than or' ),
-
- array( 0, 'n mod 10 in 3..4,9 and n mod 100 not in 10..19,70..79,90..99', 24, 'breton rule' ),
- array( 1, 'n mod 10 in 3..4,9 and n mod 100 not in 10..19,70..79,90..99', 25, 'breton rule' ),
-
- array( 0, 'n within 0..2 and n is not 2', 0, 'french rule' ),
- array( 0, 'n within 0..2 and n is not 2', 1, 'french rule' ),
- array( 0, 'n within 0..2 and n is not 2', 1.2, 'french rule' ),
- array( 1, 'n within 0..2 and n is not 2', 2, 'french rule' ),
-
- array( 1, 'n in 3..10,13..19', 2, 'scottish rule - ranges with comma' ),
- array( 0, 'n in 3..10,13..19', 4, 'scottish rule - ranges with comma' ),
- array( 1, 'n in 3..10,13..19', 12.999, 'scottish rule - ranges with comma' ),
- array( 0, 'n in 3..10,13..19', 13, 'scottish rule - ranges with comma' ),
-
- array( 0, '5 mod 3 is n', 2, 'n as result of mod - no need to pass' ),
- );
-
- return $tests;
- }
-
- function invalidTestCases() {
- $tests = array(
- array( 'n mod mod 5 is 1', 'mod mod' ),
- array( 'n', 'just n' ),
- array( 'n is in 5', 'is in' ),
- );
- return $tests;
- }
-
-}