MCPcopy
hub / github.com/django/django / test_ticket7096

Method test_ticket7096

tests/queries/tests.py:813–848  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

811 )
812
813 def test_ticket7096(self):
814 # Make sure exclude() with multiple conditions continues to work.
815 self.assertSequenceEqual(
816 Tag.objects.filter(parent=self.t1, name="t3").order_by("name"),
817 [self.t3],
818 )
819 self.assertSequenceEqual(
820 Tag.objects.exclude(parent=self.t1, name="t3").order_by("name"),
821 [self.t1, self.t2, self.t4, self.t5],
822 )
823 self.assertSequenceEqual(
824 Item.objects.exclude(tags__name="t1", name="one")
825 .order_by("name")
826 .distinct(),
827 [self.i4, self.i3, self.i2],
828 )
829 self.assertSequenceEqual(
830 Item.objects.filter(name__in=["three", "four"])
831 .exclude(tags__name="t1")
832 .order_by("name"),
833 [self.i4, self.i3],
834 )
835
836 # More twisted cases, involving nested negations.
837 self.assertSequenceEqual(
838 Item.objects.exclude(~Q(tags__name="t1", name="one")),
839 [self.i1],
840 )
841 self.assertSequenceEqual(
842 Item.objects.filter(~Q(tags__name="t1", name="one"), name="two"),
843 [self.i2],
844 )
845 self.assertSequenceEqual(
846 Item.objects.exclude(~Q(tags__name="t1", name="one"), name="two"),
847 [self.i4, self.i1, self.i3],
848 )
849
850 def test_tickets_7204_7506(self):
851 # Make sure querysets with related fields can be pickled. If this

Callers

nothing calls this directly

Calls 5

QClass · 0.90
order_byMethod · 0.80
excludeMethod · 0.80
distinctMethod · 0.80
filterMethod · 0.45

Tested by

no test coverage detected