From 9829b75d5bf468cb18e0fffdfc4a65dd7d8a6b2d Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Thu, 7 Sep 2017 09:53:16 -0400 Subject: [PATCH] Added more tests for translation's to_locale(). --- tests/i18n/tests.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py index 9d50469615..c33677c76a 100644 --- a/tests/i18n/tests.py +++ b/tests/i18n/tests.py @@ -259,8 +259,21 @@ class TranslationTests(SimpleTestCase): self.assertEqual('Catalan Win\nEOF\n', gettext('Win\r\nEOF\r\n')) def test_to_locale(self): - self.assertEqual(to_locale('en-us'), 'en_US') - self.assertEqual(to_locale('sr-lat'), 'sr_Lat') + tests = ( + ('en', 'en'), + ('EN', 'en'), + ('en-us', 'en_US'), + ('EN-US', 'en_US'), + # With > 2 characters after the dash. + ('sr-latn', 'sr_Latn'), + ('sr-LATN', 'sr_Latn'), + # With private use subtag (x-informal). + ('sr-latn-x-informal', 'sr_Latn-x-informal'), + ('SR-LATN-X-INFORMAL', 'sr_Latn-x-informal'), + ) + for lang, locale in tests: + with self.subTest(lang=lang): + self.assertEqual(to_locale(lang), locale) def test_to_language(self): self.assertEqual(trans_real.to_language('en_US'), 'en-us')