Made a bunch of simplifications now that we don't support Python 2.4

git-svn-id: http://code.djangoproject.com/svn/django/trunk@15933 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Adrian Holovaty 2011-03-28 02:27:43 +00:00
parent 579eb97961
commit 0fdabe885b
3 changed files with 18 additions and 37 deletions

View File

@ -1,8 +1,4 @@
from sys import version_info from functools import wraps
try:
from functools import wraps
except ImportError:
from django.utils.functional import wraps # Python 2.4 fallback.
from django.contrib.auth.decorators import login_required, permission_required, user_passes_test from django.contrib.auth.decorators import login_required, permission_required, user_passes_test
from django.contrib.admin.views.decorators import staff_member_required from django.contrib.admin.views.decorators import staff_member_required

View File

@ -75,11 +75,10 @@ class BasicExtractorTests(ExtractorTests):
os.chdir(self.test_dir) os.chdir(self.test_dir)
shutil.copyfile('./templates/template_with_error.txt', './templates/template_with_error.html') shutil.copyfile('./templates/template_with_error.txt', './templates/template_with_error.html')
self.assertRaises(SyntaxError, management.call_command, 'makemessages', locale=LOCALE, verbosity=0) self.assertRaises(SyntaxError, management.call_command, 'makemessages', locale=LOCALE, verbosity=0)
try: # TODO: Simplify this try/try block when we drop support for Python 2.4 try:
try: management.call_command('makemessages', locale=LOCALE, verbosity=0)
management.call_command('makemessages', locale=LOCALE, verbosity=0) except SyntaxError, e:
except SyntaxError, e: self.assertEqual(str(e), 'Translation blocks must not include other block tags: blocktrans (file templates/template_with_error.html, line 3)')
self.assertEqual(str(e), 'Translation blocks must not include other block tags: blocktrans (file templates/template_with_error.html, line 3)')
finally: finally:
os.remove('./templates/template_with_error.html') os.remove('./templates/template_with_error.html')
os.remove('./templates/template_with_error.html.py') # Waiting for #8536 to be fixed os.remove('./templates/template_with_error.html.py') # Waiting for #8536 to be fixed

View File

@ -590,19 +590,12 @@ class MiscTests(TestCase):
r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-ar,de'} r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-ar,de'}
self.assertEqual('es-ar', g(r)) self.assertEqual('es-ar', g(r))
# Python 2.3 and 2.4 return slightly different results for completely # This test assumes there won't be a Django translation to a US
# bogus locales, so we omit this test for that anything below 2.4. # variation of the Spanish language, a safe assumption. When the
# It's relatively harmless in any cases (GIGO). This also means this # user sets it as the preferred language, the main 'es'
# won't be executed on Jython currently, but life's like that # translation should be selected instead.
# sometimes. (On those platforms, passing in a truly bogus locale r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-us'}
# will get you the default locale back.) self.assertEqual(g(r), 'es')
if sys.version_info >= (2, 5):
# This test assumes there won't be a Django translation to a US
# variation of the Spanish language, a safe assumption. When the
# user sets it as the preferred language, the main 'es'
# translation should be selected instead.
r.META = {'HTTP_ACCEPT_LANGUAGE': 'es-us'}
self.assertEqual(g(r), 'es')
# This tests the following scenario: there isn't a main language (zh) # This tests the following scenario: there isn't a main language (zh)
# translation of Django but there is a translation to variation (zh_CN) # translation of Django but there is a translation to variation (zh_CN)
@ -631,20 +624,13 @@ class MiscTests(TestCase):
r.META = {'HTTP_ACCEPT_LANGUAGE': 'de'} r.META = {'HTTP_ACCEPT_LANGUAGE': 'de'}
self.assertEqual('es', g(r)) self.assertEqual('es', g(r))
# Python 2.3 and 2.4 return slightly different results for completely # This test assumes there won't be a Django translation to a US
# bogus locales, so we omit this test for that anything below 2.4. # variation of the Spanish language, a safe assumption. When the
# It's relatively harmless in any cases (GIGO). This also means this # user sets it as the preferred language, the main 'es'
# won't be executed on Jython currently, but life's like that # translation should be selected instead.
# sometimes. (On those platforms, passing in a truly bogus locale r.COOKIES = {settings.LANGUAGE_COOKIE_NAME: 'es-us'}
# will get you the default locale back.) r.META = {}
if sys.version_info >= (2, 5): self.assertEqual(g(r), 'es')
# This test assumes there won't be a Django translation to a US
# variation of the Spanish language, a safe assumption. When the
# user sets it as the preferred language, the main 'es'
# translation should be selected instead.
r.COOKIES = {settings.LANGUAGE_COOKIE_NAME: 'es-us'}
r.META = {}
self.assertEqual(g(r), 'es')
# This tests the following scenario: there isn't a main language (zh) # This tests the following scenario: there isn't a main language (zh)
# translation of Django but there is a translation to variation (zh_CN) # translation of Django but there is a translation to variation (zh_CN)