Commit 4c4954a3 authored by Anssi Kääriäinen's avatar Anssi Kääriäinen
Browse files

[1.6.x] Added tests for double-pickling a QuerySet

Refs #21102.

Backpatch of 74b91b38
parent 097fb98f
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -90,3 +90,15 @@ class PickleabilityTestCase(TestCase):
        reloaded = pickle.loads(dumped)
        self.assertEqual(original, reloaded)
        self.assertIs(reloaded.__class__, dynclass)

    def test_pickle_prefetch_related_idempotence(self):
        g = Group.objects.create(name='foo')
        groups = Group.objects.prefetch_related('event_set')

        # First pickling
        groups = pickle.loads(pickle.dumps(groups))
        self.assertQuerysetEqual(groups, [g], lambda x: x)

        # Second pickling
        groups = pickle.loads(pickle.dumps(groups))
        self.assertQuerysetEqual(groups, [g], lambda x: x)