Author: jezdez Date: 2010-02-16 06:51:43 -0600 (Tue, 16 Feb 2010) New Revision: 12451
Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/ django/branches/releases/1.1.X/tests/regressiontests/makemessages/__init__.py django/branches/releases/1.1.X/tests/regressiontests/makemessages/javascript.js django/branches/releases/1.1.X/tests/regressiontests/makemessages/locale/ django/branches/releases/1.1.X/tests/regressiontests/makemessages/locale/dummy django/branches/releases/1.1.X/tests/regressiontests/makemessages/models.py django/branches/releases/1.1.X/tests/regressiontests/makemessages/tests.py Modified: django/branches/releases/1.1.X/django/core/management/commands/makemessages.py Log: [1.1.X] Fixed #4695 - Worked around a problem of xgettext ignoring some translation strings in JavaScript files. Thanks, Ramiro Morales. Backport of r12441. Modified: django/branches/releases/1.1.X/django/core/management/commands/makemessages.py =================================================================== --- django/branches/releases/1.1.X/django/core/management/commands/makemessages.py 2010-02-16 12:51:12 UTC (rev 12450) +++ django/branches/releases/1.1.X/django/core/management/commands/makemessages.py 2010-02-16 12:51:43 UTC (rev 12451) @@ -18,7 +18,7 @@ # still sensible for us to use it, since subprocess didn't exist in 2.3. warnings.filterwarnings('ignore', category=DeprecationWarning, message=r'os\.popen3') -pythonize_re = re.compile(r'\n\s*//') +pythonize_re = re.compile(r'(?:^|\n)\s*//') def handle_extensions(extensions=('html',)): """ Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/__init__.py =================================================================== Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/javascript.js =================================================================== --- django/branches/releases/1.1.X/tests/regressiontests/makemessages/javascript.js (rev 0) +++ django/branches/releases/1.1.X/tests/regressiontests/makemessages/javascript.js 2010-02-16 12:51:43 UTC (rev 12451) @@ -0,0 +1,4 @@ +// ' +gettext('This literal should be included.') +// ' +gettext('This one as well.') Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/locale/dummy =================================================================== Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/models.py =================================================================== Added: django/branches/releases/1.1.X/tests/regressiontests/makemessages/tests.py =================================================================== --- django/branches/releases/1.1.X/tests/regressiontests/makemessages/tests.py (rev 0) +++ django/branches/releases/1.1.X/tests/regressiontests/makemessages/tests.py 2010-02-16 12:51:43 UTC (rev 12451) @@ -0,0 +1,42 @@ +import os +import re +import shutil +from django.test import TestCase +from django.core import management + +LOCALE='de' + +class ExtractorTests(TestCase): + + def setUp(self): + self._cwd = os.getcwd() + self.test_dir = os.path.abspath(os.path.dirname(__file__)) + + def _rmrf(self, dname): + if os.path.commonprefix([self.test_dir, os.path.abspath(dname)]) != self.test_dir: + return + shutil.rmtree(dname) + + def tearDown(self): + os.chdir(self.test_dir) + try: + self._rmrf('locale/%s' % LOCALE) + except OSError: + pass + os.chdir(self._cwd) + + def assertMsgId(self, msgid, s): + return self.assert_(re.search('^msgid "%s"' % msgid, s, re.MULTILINE)) + + +class JavascriptExtractorTests(ExtractorTests): + + PO_FILE='locale/%s/LC_MESSAGES/djangojs.po' % LOCALE + + def test_javascript_literals(self): + os.chdir(self.test_dir) + management.call_command('makemessages', domain='djangojs', locale=LOCALE, verbosity=0) + self.assert_(os.path.exists(self.PO_FILE)) + po_contents = open(self.PO_FILE, 'r').read() + self.assertMsgId('This literal should be included.', po_contents) + self.assertMsgId('This one as well.', po_contents) -- You received this message because you are subscribed to the Google Groups "Django updates" group. To post to this group, send email to django-upda...@googlegroups.com. To unsubscribe from this group, send email to django-updates+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-updates?hl=en.