diff options
Diffstat (limited to 'parts/django/tests/regressiontests/queryset_pickle/tests.py')
-rw-r--r-- | parts/django/tests/regressiontests/queryset_pickle/tests.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/parts/django/tests/regressiontests/queryset_pickle/tests.py b/parts/django/tests/regressiontests/queryset_pickle/tests.py new file mode 100644 index 0000000..5c64687 --- /dev/null +++ b/parts/django/tests/regressiontests/queryset_pickle/tests.py @@ -0,0 +1,36 @@ +import pickle +import datetime + +from django.test import TestCase + +from models import Group, Event, Happening + + +class PickleabilityTestCase(TestCase): + def assert_pickles(self, qs): + self.assertEqual(list(pickle.loads(pickle.dumps(qs))), list(qs)) + + def test_related_field(self): + g = Group.objects.create(name="Ponies Who Own Maybachs") + self.assert_pickles(Event.objects.filter(group=g.id)) + + def test_datetime_callable_default_all(self): + self.assert_pickles(Happening.objects.all()) + + def test_datetime_callable_default_filter(self): + self.assert_pickles(Happening.objects.filter(when=datetime.datetime.now())) + + def test_lambda_as_default(self): + self.assert_pickles(Happening.objects.filter(name="test")) + + def test_standalone_method_as_default(self): + self.assert_pickles(Happening.objects.filter(number1=1)) + + def test_staticmethod_as_default(self): + self.assert_pickles(Happening.objects.filter(number2=1)) + + def test_classmethod_as_default(self): + self.assert_pickles(Happening.objects.filter(number3=1)) + + def test_membermethod_as_default(self): + self.assert_pickles(Happening.objects.filter(number4=1)) |