From f0ba7a69a137ed461f27d873087d9f63993d2947 Mon Sep 17 00:00:00 2001 From: Tim Starling Date: Mon, 1 Feb 2016 13:37:36 +1100 Subject: [PATCH] Add tests for LanguageConverter classes that didn't have them Some of them don't have many test cases, or have test cases that don't represent the ideal transliteration and so are subject to change. But this is better than nothing. Change-Id: I4aae693bd77d9ff365f48113923ed7f9fed8d668 --- .../languages/classes/LanguageGanTest.php | 34 +++++ .../languages/classes/LanguageIuTest.php | 34 +++++ .../languages/classes/LanguageKkTest.php | 28 ++++ .../languages/classes/LanguageKuTest.php | 40 ++++++ .../languages/classes/LanguageShiTest.php | 32 +++++ .../languages/classes/LanguageTgTest.php | 30 +++++ .../languages/classes/LanguageZhTest.php | 121 ++++++++++++++++++ 7 files changed, 319 insertions(+) create mode 100644 tests/phpunit/languages/classes/LanguageGanTest.php create mode 100644 tests/phpunit/languages/classes/LanguageIuTest.php create mode 100644 tests/phpunit/languages/classes/LanguageKkTest.php create mode 100644 tests/phpunit/languages/classes/LanguageKuTest.php create mode 100644 tests/phpunit/languages/classes/LanguageShiTest.php create mode 100644 tests/phpunit/languages/classes/LanguageTgTest.php create mode 100644 tests/phpunit/languages/classes/LanguageZhTest.php diff --git a/tests/phpunit/languages/classes/LanguageGanTest.php b/tests/phpunit/languages/classes/LanguageGanTest.php new file mode 100644 index 0000000000..d5483806ed --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageGanTest.php @@ -0,0 +1,34 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + // zh2Hans + array( + array( + 'gan' => '㑯', + 'gan-hans' => '㑔', + 'gan-hant' => '㑯', + ), + '㑯' + ), + // zh2Hant + array( + array( + 'gan' => '㐷', + 'gan-hans' => '㐷', + 'gan-hant' => '傌', + ), + '㐷' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageIuTest.php b/tests/phpunit/languages/classes/LanguageIuTest.php new file mode 100644 index 0000000000..4599e7aa4d --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageIuTest.php @@ -0,0 +1,34 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + // ike-cans + array( + array( + 'ike-cans' => 'ᐴ', + 'ike-latn' => 'PUU', + 'iu' => 'PUU', + ), + 'PUU' + ), + // ike-latn + array( + array( + 'ike-cans' => 'ᐴ', + 'ike-latn' => 'puu', + 'iu' => 'ᐴ', + ), + 'ᐴ' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageKkTest.php b/tests/phpunit/languages/classes/LanguageKkTest.php new file mode 100644 index 0000000000..33968d9645 --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageKkTest.php @@ -0,0 +1,28 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + array( + array( + 'kk' => 'Адамдарға ақыл-парасат, ар-ождан берілген', + 'kk-cyrl' => 'Адамдарға ақыл-парасат, ар-ождан берілген', + 'kk-latn' => 'Adamdarğa aqıl-parasat, ar-ojdan berilgen', + 'kk-arab' => 'ادامدارعا اقىل-پاراسات، ار-وجدان بەرىلگەن', + 'kk-kz' => 'Адамдарға ақыл-парасат, ар-ождан берілген', + 'kk-tr' => 'Adamdarğa aqıl-parasat, ar-ojdan berilgen', + 'kk-cn' => 'ادامدارعا اقىل-پاراسات، ار-وجدان بەرىلگەن' + ), + 'Адамдарға ақыл-парасат, ар-ождан берілген' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageKuTest.php b/tests/phpunit/languages/classes/LanguageKuTest.php new file mode 100644 index 0000000000..a87fae7bed --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageKuTest.php @@ -0,0 +1,40 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + array( + array( + 'ku' => '١', + 'ku-arab' => '١', + 'ku-latn' => '1', + ), + '١' + ), + array( + array( + 'ku' => 'Wîkîpediya ensîklopediyeke azad bi rengê wîkî ye.', + 'ku-arab' => 'ویکیپەدیائە نسیکلۆپەدیەکەئا زاد ب رەنگێ ویکی یە.', + 'ku-latn' => 'Wîkîpediya ensîklopediyeke azad bi rengê wîkî ye.', + ), + 'Wîkîpediya ensîklopediyeke azad bi rengê wîkî ye.' + ), + array( + array( + 'ku' => 'ویکیپەدیا ەنسیکلۆپەدیەکەئا زاد ب رەنگێ ویکی یە.', + 'ku-arab' => 'ویکیپەدیا ەنسیکلۆپەدیەکەئا زاد ب رەنگێ ویکی یە.', + 'ku-latn' => 'wîkîpedîa ensîklopedîekea zad b rengê wîkî îe.', + ), + 'ویکیپەدیا ەنسیکلۆپەدیەکەئا زاد ب رەنگێ ویکی یە.' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageShiTest.php b/tests/phpunit/languages/classes/LanguageShiTest.php new file mode 100644 index 0000000000..90843c1698 --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageShiTest.php @@ -0,0 +1,32 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + array( + array( + 'shi' => 'AƔ', + 'shi-tfng' => 'ⴰⵖ', + 'shi-latn' => 'AƔ', + ), + 'AƔ' + ), + array( + array( + 'shi' => 'ⴰⵖ', + 'shi-tfng' => 'ⴰⵖ', + 'shi-latn' => 'aɣ', + ), + 'ⴰⵖ' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageTgTest.php b/tests/phpunit/languages/classes/LanguageTgTest.php new file mode 100644 index 0000000000..ff3a7a4fbc --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageTgTest.php @@ -0,0 +1,30 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + array( + array( + 'tg' => 'г', + 'tg-latn' => 'g', + ), + 'г' + ), + array( + array( + 'tg' => 'g', + 'tg-latn' => 'g', + ), + 'g' + ), + ); + } +} diff --git a/tests/phpunit/languages/classes/LanguageZhTest.php b/tests/phpunit/languages/classes/LanguageZhTest.php new file mode 100644 index 0000000000..f19d967013 --- /dev/null +++ b/tests/phpunit/languages/classes/LanguageZhTest.php @@ -0,0 +1,121 @@ +assertEquals( $result, $this->getLang()->autoConvertToAllVariants( $value ) ); + } + + public static function provideAutoConvertToAllVariants() { + return array( + // Plain hant -> hans + array( + array( + 'zh' => '㑯', + 'zh-hans' => '㑔', + 'zh-hant' => '㑯', + 'zh-cn' => '㑔', + 'zh-hk' => '㑯', + 'zh-mo' => '㑯', + 'zh-my' => '㑔', + 'zh-sg' => '㑔', + 'zh-tw' => '㑯', + ), + '㑯' + ), + // Plain hans -> hant + array( + array( + 'zh' => '㐷', + 'zh-hans' => '㐷', + 'zh-hant' => '傌', + 'zh-cn' => '㐷', + 'zh-hk' => '傌', + 'zh-mo' => '傌', + 'zh-my' => '㐷', + 'zh-sg' => '㐷', + 'zh-tw' => '傌', + ), + '㐷' + ), + // zh-cn specific + array( + array( + 'zh' => '仲介', + 'zh-hans' => '仲介', + 'zh-hant' => '仲介', + 'zh-cn' => '中介', + 'zh-hk' => '仲介', + 'zh-mo' => '仲介', + 'zh-my' => '中介', + 'zh-sg' => '中介', + 'zh-tw' => '仲介', + ), + '仲介' + ), + // zh-hk specific + array( + array( + 'zh' => '中文里', + 'zh-hans' => '中文里', + 'zh-hant' => '中文裡', + 'zh-cn' => '中文里', + 'zh-hk' => '中文裏', + 'zh-mo' => '中文裏', + 'zh-my' => '中文里', + 'zh-sg' => '中文里', + 'zh-tw' => '中文裡', + ), + '中文里' + ), + // zh-tw specific + array( + array( + 'zh' => '甲肝', + 'zh-hans' => '甲肝', + 'zh-hant' => '甲肝', + 'zh-cn' => '甲肝', + 'zh-hk' => '甲肝', + 'zh-mo' => '甲肝', + 'zh-my' => '甲肝', + 'zh-sg' => '甲肝', + 'zh-tw' => 'A肝', + ), + '甲肝' + ), + // zh-tw overrides zh-hant + array( + array( + 'zh' => '账', + 'zh-hans' => '账', + 'zh-hant' => '賬', + 'zh-cn' => '账', + 'zh-hk' => '賬', + 'zh-mo' => '賬', + 'zh-my' => '账', + 'zh-sg' => '账', + 'zh-tw' => '帳', + ), + '账' + ), + // zh-hk overrides zh-hant + array( + array( + 'zh' => '一地里', + 'zh-hans' => '一地里', + 'zh-hant' => '一地裡', + 'zh-cn' => '一地里', + 'zh-hk' => '一地裏', + 'zh-mo' => '一地裏', + 'zh-my' => '一地里', + 'zh-sg' => '一地里', + 'zh-tw' => '一地裡', + ), + '一地里' + ), + ); + } +} -- 2.20.1