Skip to content

Commit 97d0a0f

Browse files
committed
Add regression tests
1 parent 8295b2b commit 97d0a0f

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

Lib/test/test_tools/test_msgfmt.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,28 @@ def test_compilation(self):
4040

4141
self.assertDictEqual(actual._catalog, expected._catalog)
4242

43+
def test_translations(self):
44+
with open(data_dir / 'general.mo', 'rb') as f:
45+
t = GNUTranslations(f)
46+
47+
self.assertEqual(t.gettext('foo'), 'foo')
48+
self.assertEqual(t.gettext('bar'), 'baz')
49+
self.assertEqual(t.pgettext('abc', 'foo'), 'bar')
50+
self.assertEqual(t.pgettext('xyz', 'foo'), 'bar')
51+
self.assertEqual(t.gettext('Multilinestring'), 'Multilinetranslation')
52+
self.assertEqual(t.gettext('"escapes"'), '"translated"')
53+
self.assertEqual(t.gettext('\n newlines \n'), '\n translated \n')
54+
self.assertEqual(t.ngettext('One email sent.', '%d emails sent.', 1),
55+
'One email sent.')
56+
self.assertEqual(t.ngettext('One email sent.', '%d emails sent.', 2),
57+
'%d emails sent.')
58+
self.assertEqual(t.npgettext('abc', 'One email sent.',
59+
'%d emails sent.', 1),
60+
'One email sent.')
61+
self.assertEqual(t.npgettext('abc', 'One email sent.',
62+
'%d emails sent.', 2),
63+
'%d emails sent.')
64+
4365
def test_invalid_msgid_plural(self):
4466
with temp_cwd():
4567
Path('invalid.po').write_text('''\

0 commit comments

Comments
 (0)