File tree Expand file tree Collapse file tree 1 file changed +8
-1
lines changed Expand file tree Collapse file tree 1 file changed +8
-1
lines changed Original file line number Diff line number Diff line change 1
1
from math import ceil
2
2
3
3
from django .db import connection , models
4
- from django .db .models import ProtectedError , RestrictedError
4
+ from django .db .models import ProtectedError , Q , RestrictedError
5
5
from django .db .models .deletion import Collector
6
6
from django .db .models .sql .constants import GET_ITERATOR_CHUNK_SIZE
7
7
from django .test import TestCase , skipIfDBFeature , skipUnlessDBFeature
@@ -776,3 +776,10 @@ def test_fast_delete_aggregation(self):
776
776
(1 , {"delete.Base" : 1 }),
777
777
)
778
778
self .assertIs (Base .objects .exists (), False )
779
+
780
+ def test_fast_delete_full_match (self ):
781
+ avatar = Avatar .objects .create (desc = "bar" )
782
+ User .objects .create (avatar = avatar )
783
+ with self .assertNumQueries (1 ):
784
+ User .objects .filter (~ Q (pk__in = []) | Q (avatar__desc = "foo" )).delete ()
785
+ self .assertFalse (User .objects .exists ())
You can’t perform that action at this time.
0 commit comments