Mercurial > babel > mirror
comparison babel/messages/tests/catalog.py @ 606:c5dd3752bf2a trunk
ensure .mo file header contains the same information as the source .po file (#199)
author | fschwarz |
---|---|
date | Mon, 27 Aug 2012 21:15:27 +0000 |
parents | a661a0360248 |
children |
comparison
equal
deleted
inserted
replaced
605:6dc7e067bafc | 606:c5dd3752bf2a |
---|---|
14 import copy | 14 import copy |
15 import datetime | 15 import datetime |
16 import doctest | 16 import doctest |
17 import unittest | 17 import unittest |
18 | 18 |
19 from babel.dates import format_datetime | |
19 from babel.messages import catalog | 20 from babel.messages import catalog |
21 from babel.util import FixedOffsetTimezone | |
20 | 22 |
21 | 23 |
22 class MessageTestCase(unittest.TestCase): | 24 class MessageTestCase(unittest.TestCase): |
23 | 25 |
24 def test_python_format(self): | 26 def test_python_format(self): |
280 "POT-Creation-Date: 2009-03-09 15:47-0700\n" + | 282 "POT-Creation-Date: 2009-03-09 15:47-0700\n" + |
281 "PO-Revision-Date: 2009-03-09 15:47-0700\n") | 283 "PO-Revision-Date: 2009-03-09 15:47-0700\n") |
282 for key, value in localized.mime_headers: | 284 for key, value in localized.mime_headers: |
283 if key in ('POT-Creation-Date', 'PO-Revision-Date'): | 285 if key in ('POT-Creation-Date', 'PO-Revision-Date'): |
284 self.assertEqual(value, '2009-03-09 15:47-0700') | 286 self.assertEqual(value, '2009-03-09 15:47-0700') |
287 | |
288 def test_mime_headers_contain_same_information_as_attributes(self): | |
289 cat = catalog.Catalog() | |
290 cat[''] = catalog.Message('', | |
291 "Last-Translator: Foo Bar <foo.bar@example.com>\n" + | |
292 "Language-Team: de <de@example.com>\n" + | |
293 "POT-Creation-Date: 2009-03-01 11:20+0200\n" + | |
294 "PO-Revision-Date: 2009-03-09 15:47-0700\n") | |
295 self.assertEqual(None, cat.locale) | |
296 mime_headers = dict(cat.mime_headers) | |
297 | |
298 self.assertEqual('Foo Bar <foo.bar@example.com>', cat.last_translator) | |
299 self.assertEqual('Foo Bar <foo.bar@example.com>', | |
300 mime_headers['Last-Translator']) | |
301 | |
302 self.assertEqual('de <de@example.com>', cat.language_team) | |
303 self.assertEqual('de <de@example.com>', mime_headers['Language-Team']) | |
304 | |
305 dt = datetime.datetime(2009, 3, 9, 15, 47, tzinfo=FixedOffsetTimezone(-7 * 60)) | |
306 self.assertEqual(dt, cat.revision_date) | |
307 formatted_dt = format_datetime(dt, 'yyyy-MM-dd HH:mmZ', locale='en') | |
308 self.assertEqual(formatted_dt, mime_headers['PO-Revision-Date']) | |
309 | |
285 | 310 |
286 def suite(): | 311 def suite(): |
287 suite = unittest.TestSuite() | 312 suite = unittest.TestSuite() |
288 suite.addTest(doctest.DocTestSuite(catalog, optionflags=doctest.ELLIPSIS)) | 313 suite.addTest(doctest.DocTestSuite(catalog, optionflags=doctest.ELLIPSIS)) |
289 suite.addTest(unittest.makeSuite(MessageTestCase)) | 314 suite.addTest(unittest.makeSuite(MessageTestCase)) |