From 85f6587c8556592e969b23a92f7432d24d464532 Mon Sep 17 00:00:00 2001 From: =?utf8?q?C=C3=A9dric=20Krier?= Date: Sun, 19 Aug 2018 18:03:02 +0200 Subject: [PATCH] Test empty translation uses fallback --- tests/messages/test_mofile.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/tests/messages/test_mofile.py b/tests/messages/test_mofile.py index 5fedc600..66c41d9a 100644 --- a/tests/messages/test_mofile.py +++ b/tests/messages/test_mofile.py @@ -71,3 +71,26 @@ class WriteMoTestCase(unittest.TestCase): catalog2.add(('Fuzz', 'Fuzzes'), ('', '', '')) buf = BytesIO() mofile.write_mo(buf, catalog2) + + def test_empty_translation_with_fallback(self): + catalog1 = Catalog(locale='fr_FR') + catalog1.add(u'', '''\ +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n''') + catalog1.add(u'Fuzz', '') + buf1 = BytesIO() + mofile.write_mo(buf1, catalog1) + buf1.seek(0) + catalog2 = Catalog(locale='fr') + catalog2.add(u'', '''\ +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n''') + catalog2.add(u'Fuzz', 'Flou') + buf2 = BytesIO() + mofile.write_mo(buf2, catalog2) + buf2.seek(0) + + translations = Translations(fp=buf1) + translations.add_fallback(Translations(fp=buf2)) + + self.assertEqual(u'Flou', translations.ugettext('Fuzz')) -- 2.47.2