def get_queryset(self):
     return DelayedUnionQuerySet(
         User.objects.exclude(id=self.user.id),
         DelayedUnionQuerySet(
             User.objects.exclude(id=self.user_b.id),
             User.objects.exclude(id=self.user_c.id),
         ))
    def test_select_related(self):
        base_qs = Permission.objects.all()
        qs = DelayedUnionQuerySet(base_qs, base_qs)

        self.assertTrue(qs.exists())
        for permission in qs.select_related('content_type'):
            with self.assertNumQueries(0):
                self.assertIsNotNone(permission.content_type.id)
 def test_does_not_support_nested_delayed_querysets_with_incompatible_kwargs(
         self):
     with self.assertRaises(ValueError):
         DelayedUnionQuerySet(
             User.objects.all(),
             DelayedUnionQuerySet(User.objects.all(),
                                  User.objects.all(),
                                  all=True))
 def test_does_not_support_delayed_differences_as_querysets(self):
     with self.assertRaises(ValueError):
         DelayedUnionQuerySet(
             User.objects.all(),
             DelayedDifferenceQuerySet(
                 User.objects.all(),
                 User.objects.all(),
             ))
 def test_does_not_support_delayed_intersections_as_querysets(self):
     with self.assertRaises(ValueError):
         DelayedUnionQuerySet(
             User.objects.all(),
             DelayedIntersectionQuerySet(
                 User.objects.all(),
                 User.objects.all(),
             ))
 def get_queryset(self):
     return DelayedUnionQuerySet(
         User.objects.all(),
         User.objects.filter(id=self.bad_id),
     )
 def get_queryset(self):
     return DelayedUnionQuerySet(
         User.objects.all(),
         User.objects.all(),
     )
 def test_delayed_union_only_accepts_all_as_kwarg(self):
     with self.assertRaises(TypeError):
         DelayedUnionQuerySet(User.objects.all(),
                              User.objects.all(),
                              foo=42)
 def get_queryset(self):
     return DelayedUnionQuerySet(User.objects.all(),
                                 User.objects.filter(id=self.user_b.id),
                                 all=True)