diff options
| author | Russell Keith-Magee <russell@keith-magee.com> | 2008-07-13 08:48:18 +0000 |
|---|---|---|
| committer | Russell Keith-Magee <russell@keith-magee.com> | 2008-07-13 08:48:18 +0000 |
| commit | 32b8c3e1c015902b72ef7caade5c35a10e80fb1a (patch) | |
| tree | a632df6ed4c79527f2afb1329954b2d081fa1172 /tests/regressiontests | |
| parent | 502e9a5ab48d33f4901fb0d022a3fb20c3959bdc (diff) | |
Fixed #7718 -- Added a naive implementation of sorted() for Python 2.3 compatibility, and modified test cases to import the function when required.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7914 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests/regressiontests')
10 files changed, 63 insertions, 1 deletions
diff --git a/tests/regressiontests/admin_scripts/management/commands/app_command.py b/tests/regressiontests/admin_scripts/management/commands/app_command.py index f72e912ac0..3d8c43755c 100644 --- a/tests/regressiontests/admin_scripts/management/commands/app_command.py +++ b/tests/regressiontests/admin_scripts/management/commands/app_command.py @@ -1,4 +1,9 @@ from django.core.management.base import AppCommand +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted class Command(AppCommand): help = 'Test Application-based commands' diff --git a/tests/regressiontests/admin_scripts/management/commands/base_command.py b/tests/regressiontests/admin_scripts/management/commands/base_command.py index 438f7038ca..536f40409a 100644 --- a/tests/regressiontests/admin_scripts/management/commands/base_command.py +++ b/tests/regressiontests/admin_scripts/management/commands/base_command.py @@ -1,5 +1,10 @@ from django.core.management.base import BaseCommand from optparse import make_option +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted class Command(BaseCommand): option_list = BaseCommand.option_list + ( diff --git a/tests/regressiontests/admin_scripts/management/commands/label_command.py b/tests/regressiontests/admin_scripts/management/commands/label_command.py index 2b735c8e60..e749209d9c 100644 --- a/tests/regressiontests/admin_scripts/management/commands/label_command.py +++ b/tests/regressiontests/admin_scripts/management/commands/label_command.py @@ -1,4 +1,9 @@ from django.core.management.base import LabelCommand +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted class Command(LabelCommand): help = "Test Label-based commands" diff --git a/tests/regressiontests/admin_scripts/management/commands/noargs_command.py b/tests/regressiontests/admin_scripts/management/commands/noargs_command.py index 683eb7a62c..f0f418752a 100644 --- a/tests/regressiontests/admin_scripts/management/commands/noargs_command.py +++ b/tests/regressiontests/admin_scripts/management/commands/noargs_command.py @@ -1,4 +1,9 @@ from django.core.management.base import NoArgsCommand +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted class Command(NoArgsCommand): help = "Test No-args commands" diff --git a/tests/regressiontests/defaultfilters/tests.py b/tests/regressiontests/defaultfilters/tests.py index b56c33a652..1b659a91f4 100644 --- a/tests/regressiontests/defaultfilters/tests.py +++ b/tests/regressiontests/defaultfilters/tests.py @@ -537,6 +537,12 @@ u'123' from django.template.defaultfilters import * import datetime +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted + if __name__ == '__main__': import doctest doctest.testmod() diff --git a/tests/regressiontests/model_inheritance_regress/models.py b/tests/regressiontests/model_inheritance_regress/models.py index 24d6186150..b78b493e15 100644 --- a/tests/regressiontests/model_inheritance_regress/models.py +++ b/tests/regressiontests/model_inheritance_regress/models.py @@ -6,6 +6,12 @@ import datetime from django.db import models +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted + class Place(models.Model): name = models.CharField(max_length=50) address = models.CharField(max_length=80) diff --git a/tests/regressiontests/queries/models.py b/tests/regressiontests/queries/models.py index fe378a57b2..65d0d6ec65 100644 --- a/tests/regressiontests/queries/models.py +++ b/tests/regressiontests/queries/models.py @@ -8,6 +8,12 @@ import pickle from django.db import models from django.db.models.query import Q +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted + class Tag(models.Model): name = models.CharField(max_length=10) parent = models.ForeignKey('self', blank=True, null=True, diff --git a/tests/regressiontests/utils/datastructures.py b/tests/regressiontests/utils/datastructures.py index 86e4112577..5d31d21318 100644 --- a/tests/regressiontests/utils/datastructures.py +++ b/tests/regressiontests/utils/datastructures.py @@ -48,4 +48,11 @@ ['one', 'second-two'] >>> d.values() # Here the order of SortedDict values *is* what we are testing ['second-two', 'one'] -"""
\ No newline at end of file +""" + +# Python 2.3 doesn't have sorted() +try: + sorted +except NameError: + from django.utils.itercompat import sorted +
\ No newline at end of file diff --git a/tests/regressiontests/utils/itercompat.py b/tests/regressiontests/utils/itercompat.py new file mode 100644 index 0000000000..ad79cffcd1 --- /dev/null +++ b/tests/regressiontests/utils/itercompat.py @@ -0,0 +1,15 @@ +""" +# Tests of the utils itercompat library. + +>>> from django.utils.itercompat import sorted as compat_sorted + +# Check the replacement version of sorted +>>> x = [5,1,4,2,3] +>>> y = compat_sorted(x) +>>> print y +[1, 2, 3, 4, 5] + +>>> print x +[5, 1, 4, 2, 3] + +"""
\ No newline at end of file diff --git a/tests/regressiontests/utils/tests.py b/tests/regressiontests/utils/tests.py index 6fc645505b..cd4762e02f 100644 --- a/tests/regressiontests/utils/tests.py +++ b/tests/regressiontests/utils/tests.py @@ -8,12 +8,14 @@ from django.utils import html, checksums import timesince import datastructures +import itercompat from decorators import DecoratorFromMiddlewareTests # Extra tests __test__ = { 'timesince': timesince, 'datastructures': datastructures, + 'itercompat': itercompat, } class TestUtilsHtml(TestCase): |
