Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpmyadmin/phpmyadmin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMaurício Meneghini Fauth <mauricio@fauth.dev>2022-07-20 00:52:03 +0300
committerMaurício Meneghini Fauth <mauricio@fauth.dev>2022-07-20 00:52:03 +0300
commitfda386a998ad5a64c109797e6ac9d70d8d718c96 (patch)
treeed91e826a84bd9e636059de7657dfee13d696b6a /test
parent987cb5043dba8d385a4890bb171a5bf58bcd10ed (diff)
Fix LanguageTest failing test when locale file is missing
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
Diffstat (limited to 'test')
-rw-r--r--test/classes/LanguageTest.php54
1 files changed, 30 insertions, 24 deletions
diff --git a/test/classes/LanguageTest.php b/test/classes/LanguageTest.php
index c07abae0ea..d2ae460005 100644
--- a/test/classes/LanguageTest.php
+++ b/test/classes/LanguageTest.php
@@ -8,6 +8,7 @@ use PhpMyAdmin\LanguageManager;
use function _ngettext;
use function count;
+use function file_exists;
use function is_readable;
use function strtolower;
@@ -150,7 +151,7 @@ class LanguageTest extends AbstractTestCase
* @param string $accept Value for HTTP Accept-Language header
* @param string $agent Value for HTTP User-Agent header
* @param string $default Value for default language
- * @param string $expect Expected language name
+ * @param string $expect Expected language code
*
* @dataProvider selectDataProvider
*/
@@ -164,6 +165,11 @@ class LanguageTest extends AbstractTestCase
string $default,
string $expect
): void {
+ if ($expect !== 'en' && ! file_exists(LOCALE_PATH . '/' . $expect . '/LC_MESSAGES/phpmyadmin.mo')) {
+ // This could happen after removing incomplete .mo files.
+ $this->markTestSkipped('Locale file does not exists: ' . $expect);
+ }
+
$GLOBALS['config']->set('FilterLanguages', '');
$GLOBALS['config']->set('Lang', $lang);
$GLOBALS['config']->set('is_https', false);
@@ -176,7 +182,7 @@ class LanguageTest extends AbstractTestCase
$lang = $this->manager->selectLanguage();
- $this->assertEquals($expect, $lang->getEnglishName());
+ $this->assertEquals($expect, $lang->getCode());
$GLOBALS['config']->set('Lang', '');
$_POST['lang'] = '';
@@ -195,28 +201,28 @@ class LanguageTest extends AbstractTestCase
public function selectDataProvider(): array
{
return [
- ['cs', 'en', '', '', '', '', '', 'Czech'],
- ['', 'cs', '', '', '', '', '', 'Czech'],
- ['', 'cs', 'en', '', '', '', '', 'Czech'],
- ['', '', 'cs', '', '', '', '', 'Czech'],
- ['', '', '', 'cs', '', '', '', 'Czech'],
- ['', '', '', '', 'cs,en-US;q=0.7,en;q=0.3', '', '', 'Czech'],
- ['', '', '', '', '', 'Mozilla/5.0 (Linux; U; Android 2.2.2; tr-tr; GM FOX)', '', 'Turkish'],
- ['', '', '', '', '', '', 'cs', 'Czech'],
- ['', '', '', '', '', '', '', 'English'],
- ['', '', '', '', 'pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Portuguese'],
- ['', '', '', '', 'pt-PT,pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Portuguese'],
- ['', '', '', '', 'pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Portuguese (Brazil)'],
- ['', '', '', '', 'ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Arabic'],
- ['', '', '', '', 'ar-AE,ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Arabic'],
- ['', '', '', '', 'ar-LY,ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'Arabic (Libya)'],
- ['', '', '', '', 'en,pt;q=0.5', '', 'pt', 'English'],
- ['', '', '', '', 'en-GB,en;q=0.7,pt;q=0.3', '', 'pt', 'English (United Kingdom)'],
- ['', '', '', '', 'en-US,en;q=0.7,pt;q=0.3', '', 'pt', 'English'],
- ['', '', '', '', 'zh,en;q=0.5', '', 'en', 'Chinese simplified'],
- ['', '', '', '', 'zh-CN,zh;q=0.7,en;q=0.3', '', 'en', 'Chinese simplified'],
- ['', '', '', '', 'zh-HK,zh;q=0.7,en;q=0.3', '', 'en', 'Chinese traditional'],
- ['', '', '', '', 'zh-TW,zh;q=0.7,en;q=0.3', '', 'en', 'Chinese traditional'],
+ ['cs', 'en', '', '', '', '', '', 'cs'],
+ ['', 'cs', '', '', '', '', '', 'cs'],
+ ['', 'cs', 'en', '', '', '', '', 'cs'],
+ ['', '', 'cs', '', '', '', '', 'cs'],
+ ['', '', '', 'cs', '', '', '', 'cs'],
+ ['', '', '', '', 'cs,en-US;q=0.7,en;q=0.3', '', '', 'cs'],
+ ['', '', '', '', '', 'Mozilla/5.0 (Linux; U; Android 2.2.2; tr-tr; GM FOX)', '', 'tr'],
+ ['', '', '', '', '', '', 'cs', 'cs'],
+ ['', '', '', '', '', '', '', 'en'],
+ ['', '', '', '', 'pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'pt'],
+ ['', '', '', '', 'pt-PT,pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'pt'],
+ ['', '', '', '', 'pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'pt_BR'],
+ ['', '', '', '', 'ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'ar'],
+ ['', '', '', '', 'ar-AE,ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'ar'],
+ ['', '', '', '', 'ar-LY,ar;q=0.8,en-US;q=0.5,en;q=0.3', '', 'en', 'ar_LY'],
+ ['', '', '', '', 'en,pt;q=0.5', '', 'pt', 'en'],
+ ['', '', '', '', 'en-GB,en;q=0.7,pt;q=0.3', '', 'pt', 'en_GB'],
+ ['', '', '', '', 'en-US,en;q=0.7,pt;q=0.3', '', 'pt', 'en'],
+ ['', '', '', '', 'zh,en;q=0.5', '', 'en', 'zh_CN'],
+ ['', '', '', '', 'zh-CN,zh;q=0.7,en;q=0.3', '', 'en', 'zh_CN'],
+ ['', '', '', '', 'zh-HK,zh;q=0.7,en;q=0.3', '', 'en', 'zh_TW'],
+ ['', '', '', '', 'zh-TW,zh;q=0.7,en;q=0.3', '', 'en', 'zh_TW'],
];
}