Merge pull request #380 from dalf/fix-339

[fix] interface language zh_CN and zh_TW don't work
This commit is contained in:
Alexandre Flament 2021-10-12 21:50:05 +02:00 committed by GitHub
commit ee5e9f9e1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 68 additions and 31 deletions

View file

@ -92,6 +92,14 @@ class TestUtils(SearxTestCase):
self.assertEqual(utils.match_language('es', [], fallback='fallback'), 'fallback')
self.assertEqual(utils.match_language('ja', ['jp'], {'ja': 'jp'}), 'jp')
# handle script tags
self.assertEqual(utils.match_language('zh-CN', ['zh-Hans-CN', 'zh-Hant-TW']), 'zh-Hans-CN')
self.assertEqual(utils.match_language('zh-TW', ['zh-Hans-CN', 'zh-Hant-TW']), 'zh-Hant-TW')
self.assertEqual(utils.match_language('zh-Hans-CN', ['zh-CN', 'zh-TW']), 'zh-CN')
self.assertEqual(utils.match_language('zh-Hant-TW', ['zh-CN', 'zh-TW']), 'zh-TW')
self.assertEqual(utils.match_language('zh-Hans', ['zh-CN', 'zh-TW', 'zh-HK']), 'zh-CN')
self.assertEqual(utils.match_language('zh-Hant', ['zh-CN', 'zh-TW', 'zh-HK']), 'zh-TW')
aliases = {'en-GB': 'en-UK', 'he': 'iw'}
# guess country

View file

@ -211,12 +211,12 @@ class ViewsTestCase(SearxTestCase):
result = self.app.get('/preferences', headers={'Accept-Language': 'zh-tw;q=0.8'})
self.assertEqual(result.status_code, 200)
self.assertIn(
b'<option value="zh_TW" selected="selected">',
b'<option value="zh-Hant-TW" selected="selected">',
result.data,
'Interface locale ignored browser preference.'
)
self.assertIn(
b'<option value="zh-TW" selected="selected">',
b'<option value="zh-Hant-TW" selected="selected">',
result.data,
'Search language ignored browser preference.'
)