~ubuntu-branches/ubuntu/quantal/python-django/quantal-security

« back to all changes in this revision

Viewing changes to tests/regressiontests/queryset_pickle/tests.py

  • Committer: Bazaar Package Importer
  • Author(s): Chris Lamb
  • Date: 2010-05-21 07:52:55 UTC
  • mfrom: (1.3.6 upstream)
  • mto: This revision was merged to the branch mainline in revision 28.
  • Revision ID: james.westby@ubuntu.com-20100521075255-ii78v1dyfmyu3uzx
Tags: upstream-1.2
ImportĀ upstreamĀ versionĀ 1.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import pickle
 
2
import datetime
 
3
 
 
4
from django.test import TestCase
 
5
 
 
6
from models import Group, Event, Happening
 
7
 
 
8
 
 
9
class PickleabilityTestCase(TestCase):
 
10
    def assert_pickles(self, qs):
 
11
        self.assertEqual(list(pickle.loads(pickle.dumps(qs))), list(qs))
 
12
 
 
13
    def test_related_field(self):
 
14
        g = Group.objects.create(name="Ponies Who Own Maybachs")
 
15
        self.assert_pickles(Event.objects.filter(group=g.id))
 
16
 
 
17
    def test_datetime_callable_default_all(self):
 
18
        self.assert_pickles(Happening.objects.all())
 
19
 
 
20
    def test_datetime_callable_default_filter(self):
 
21
        self.assert_pickles(Happening.objects.filter(when=datetime.datetime.now()))
 
22
 
 
23
    def test_lambda_as_default(self):
 
24
        self.assert_pickles(Happening.objects.filter(name="test"))
 
25
 
 
26
    def test_standalone_method_as_default(self):
 
27
        self.assert_pickles(Happening.objects.filter(number1=1))
 
28
 
 
29
    def test_staticmethod_as_default(self):
 
30
        self.assert_pickles(Happening.objects.filter(number2=1))
 
31
 
 
32
    def test_classmethod_as_default(self):
 
33
        self.assert_pickles(Happening.objects.filter(number3=1))
 
34
 
 
35
    def test_membermethod_as_default(self):
 
36
        self.assert_pickles(Happening.objects.filter(number4=1))