@@ -221,13 +221,13 @@ def test_search_autocomplete(self):
221
221
fuzzy = {"maxEdits" : 2 },
222
222
)
223
223
)
224
- self .assertCountEqual (qs . all , [self .article ])
224
+ self .assertCountEqual (qs , [self .article ])
225
225
226
226
def test_search_autocomplete_embedded_model (self ):
227
227
qs = Article .objects .annotate (
228
228
score = SearchAutocomplete (path = "writer__name" , query = "Joselina" )
229
229
)
230
- self .assertCountEqual (qs . all , [self .article ])
230
+ self .assertCountEqual (qs , [self .article ])
231
231
232
232
def test_constant_score (self ):
233
233
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
@@ -240,7 +240,7 @@ def test_constant_score(self):
240
240
score = constant_score ,
241
241
)
242
242
)
243
- self .assertCountEqual (qs . all , [self .article ])
243
+ self .assertCountEqual (qs , [self .article ])
244
244
scored = qs .first ()
245
245
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
246
246
@@ -268,12 +268,12 @@ def setUp(self):
268
268
269
269
def test_search_exists (self ):
270
270
qs = Article .objects .annotate (score = SearchExists (path = "body" ))
271
- self .assertCountEqual (qs . all , [self .article ])
271
+ self .assertCountEqual (qs , [self .article ])
272
272
273
273
def test_constant_score (self ):
274
274
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
275
275
qs = Article .objects .annotate (score = SearchExists (path = "body" , score = constant_score ))
276
- self .assertCountEqual (qs . all , [self .article ])
276
+ self .assertCountEqual (qs , [self .article ])
277
277
scored = qs .first ()
278
278
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
279
279
@@ -298,14 +298,14 @@ def setUp(self):
298
298
299
299
def test_search_in (self ):
300
300
qs = Article .objects .annotate (score = SearchIn (path = "headline" , value = ["cross" , "river" ]))
301
- self .assertCountEqual (qs . all , [self .article ])
301
+ self .assertCountEqual (qs , [self .article ])
302
302
303
303
def test_constant_score (self ):
304
304
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
305
305
qs = Article .objects .annotate (
306
306
score = SearchIn (path = "headline" , value = ["cross" , "river" ], score = constant_score )
307
307
)
308
- self .assertCountEqual (qs . all , [self .article ])
308
+ self .assertCountEqual (qs , [self .article ])
309
309
scored = qs .first ()
310
310
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
311
311
@@ -333,15 +333,15 @@ def setUp(self):
333
333
Article .objects .create (headline = "cheetah" , number = 2 , body = "fastest animal" )
334
334
335
335
def test_search_phrase (self ):
336
- qs = Article .objects .annotate (score = SearchPhrase (path = "body" , query = "quick brown" ))
337
- self .assertCountEqual (qs . all , [self .article ])
336
+ qs = Article .objects .annotate (score = SearchPhrase (path = "body" , query = "quick brown" , slop = 3 ))
337
+ self .assertCountEqual (qs , [self .article ])
338
338
339
339
def test_constant_score (self ):
340
340
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
341
341
qs = Article .objects .annotate (
342
342
score = SearchPhrase (path = "body" , query = "quick brown" , score = constant_score )
343
343
)
344
- self .assertCountEqual (qs . all , [self .article ])
344
+ self .assertCountEqual (qs , [self .article ])
345
345
scored = qs .first ()
346
346
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
347
347
@@ -432,14 +432,16 @@ def setUp(self):
432
432
433
433
def test_search_range (self ):
434
434
qs = Article .objects .annotate (score = SearchRange (path = "number" , gte = 10 , lt = 30 ))
435
- self .assertCountEqual (qs .all , [self .number20 ])
435
+ self .assertCountEqual (qs , [self .number20 ])
436
+ qs = Article .objects .annotate (score = SearchRange (path = "number" , gt = 20 , lte = 30 ))
437
+ self .assertCountEqual (qs , [])
436
438
437
439
def test_constant_score (self ):
438
440
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
439
441
qs = Article .objects .annotate (
440
442
score = SearchRange (path = "number" , gte = 10 , lt = 30 , score = constant_score )
441
443
)
442
- self .assertCountEqual (qs . all , [self .number20 ])
444
+ self .assertCountEqual (qs , [self .number20 ])
443
445
scored = qs .first ()
444
446
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
445
447
@@ -474,7 +476,7 @@ def test_search_regex(self):
474
476
qs = Article .objects .annotate (
475
477
score = SearchRegex (path = "headline" , query = "hello.*" , allow_analyzed_field = True )
476
478
)
477
- self .assertCountEqual (qs . all , [self .article ])
479
+ self .assertCountEqual (qs , [self .article ])
478
480
479
481
def test_constant_score (self ):
480
482
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
@@ -483,7 +485,7 @@ def test_constant_score(self):
483
485
path = "headline" , query = "hello.*" , allow_analyzed_field = True , score = constant_score
484
486
)
485
487
)
486
- self .assertCountEqual (qs . all , [self .article ])
488
+ self .assertCountEqual (qs , [self .article ])
487
489
scored = qs .first ()
488
490
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
489
491
@@ -514,19 +516,19 @@ def setUp(self):
514
516
515
517
def test_search_text (self ):
516
518
qs = Article .objects .annotate (score = SearchText (path = "body" , query = "lazy" ))
517
- self .assertCountEqual (qs . all , [self .article ])
519
+ self .assertCountEqual (qs , [self .article ])
518
520
519
521
def test_search_lookup (self ):
520
522
qs = Article .objects .filter (body__search = "lazy" )
521
- self .assertCountEqual (qs . all , [self .article ])
523
+ self .assertCountEqual (qs , [self .article ])
522
524
523
525
def test_search_text_with_fuzzy_and_criteria (self ):
524
526
qs = Article .objects .annotate (
525
527
score = SearchText (
526
528
path = "body" , query = "lazzy" , fuzzy = {"maxEdits" : 2 }, match_criteria = "all"
527
529
)
528
530
)
529
- self .assertCountEqual (qs . all , [self .article ])
531
+ self .assertCountEqual (qs , [self .article ])
530
532
531
533
def test_constant_score (self ):
532
534
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
@@ -539,7 +541,7 @@ def test_constant_score(self):
539
541
score = constant_score ,
540
542
)
541
543
)
542
- self .assertCountEqual (qs . all , [self .article ])
544
+ self .assertCountEqual (qs , [self .article ])
543
545
scored = qs .first ()
544
546
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
545
547
@@ -578,15 +580,17 @@ def setUp(self):
578
580
Article .objects .create (headline = "batman" , number = 2 , body = "" )
579
581
580
582
def test_search_wildcard (self ):
581
- qs = Article .objects .annotate (score = SearchWildcard (path = "headline" , query = "dark-*" ))
582
- self .assertCountEqual (qs .all , [self .article ])
583
+ qs = Article .objects .annotate (
584
+ score = SearchWildcard (path = "headline" , query = "dark-*" , allow_analyzed_field = False )
585
+ )
586
+ self .assertCountEqual (qs , [self .article ])
583
587
584
588
def test_constant_score (self ):
585
589
constant_score = SearchScoreOption ({"constant" : {"value" : 10 }})
586
590
qs = Article .objects .annotate (
587
591
score = SearchWildcard (path = "headline" , query = "dark-*" , score = constant_score )
588
592
)
589
- self .assertCountEqual (qs . all , [self .article ])
593
+ self .assertCountEqual (qs , [self .article ])
590
594
scored = qs .first ()
591
595
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
592
596
@@ -633,7 +637,7 @@ def test_search_geo_shape(self):
633
637
qs = Article .objects .annotate (
634
638
score = SearchGeoShape (path = "location" , relation = "within" , geometry = polygon )
635
639
)
636
- self .assertCountEqual (qs . all , [self .article ])
640
+ self .assertCountEqual (qs , [self .article ])
637
641
638
642
def test_constant_score (self ):
639
643
polygon = {
@@ -646,7 +650,7 @@ def test_constant_score(self):
646
650
path = "location" , relation = "within" , geometry = polygon , score = constant_score
647
651
)
648
652
)
649
- self .assertCountEqual (qs . all , [self .article ])
653
+ self .assertCountEqual (qs , [self .article ])
650
654
scored = qs .first ()
651
655
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
652
656
@@ -697,7 +701,7 @@ def test_search_geo_within(self):
697
701
geometry = polygon ,
698
702
)
699
703
)
700
- self .assertCountEqual (qs . all , [self .article ])
704
+ self .assertCountEqual (qs , [self .article ])
701
705
702
706
def test_constant_score (self ):
703
707
polygon = {
@@ -713,7 +717,7 @@ def test_constant_score(self):
713
717
score = constant_score ,
714
718
)
715
719
)
716
- self .assertCountEqual (qs . all , [self .article ])
720
+ self .assertCountEqual (qs , [self .article ])
717
721
scored = qs .first ()
718
722
self .assertAlmostEqual (scored .score , 10.0 , places = 2 )
719
723
@@ -775,7 +779,7 @@ def test_search_more_like_this(self):
775
779
qs = Article .objects .annotate (score = SearchMoreLikeThis (documents = like_docs )).order_by (
776
780
"score"
777
781
)
778
- self .assertQuerySetEqual (qs . all , [self .article1 , self .article2 ], lambda a : a .headline )
782
+ self .assertQuerySetEqual (qs , [self .article1 , self .article2 ], lambda a : a .headline )
779
783
780
784
781
785
class CompoundSearchTests (SearchUtilsMixin ):
@@ -834,14 +838,14 @@ def test_expression(self):
834
838
)
835
839
836
840
qs = Article .objects .annotate (score = compound ).order_by ("score" )
837
- self .assertCountEqual (qs . all , [self .exoplanet ])
841
+ self .assertCountEqual (qs , [self .exoplanet ])
838
842
839
843
def test_operations (self ):
840
844
expr = SearchEquals (path = "headline" , value = "space exploration" ) & ~ SearchEquals (
841
845
path = "number" , value = 3
842
846
)
843
847
qs = Article .objects .annotate (score = expr )
844
- self .assertCountEqual (qs . all , [self .mars_mission , self .exoplanet ])
848
+ self .assertCountEqual (qs , [self .mars_mission , self .exoplanet ])
845
849
846
850
def test_mixed_scores (self ):
847
851
boost_score = SearchScoreOption ({"boost" : {"value" : 5 }})
@@ -853,11 +857,13 @@ def test_mixed_scores(self):
853
857
must_expr = SearchEquals (path = "headline" , value = "space exploration" , score = boost_score )
854
858
should_expr = SearchPhrase (path = "body" , query = "exoplanets" , score = constant_score )
855
859
must_not_expr = SearchPhrase (path = "body" , query = "icy moons" , score = function_score )
860
+ filter_ = SearchRange (path = "number" , gte = 1 , lt = 4 )
856
861
857
862
compound = CompoundExpression (
858
863
must = [must_expr ],
859
864
must_not = [must_not_expr ],
860
865
should = [should_expr ],
866
+ filter = [filter_ ],
861
867
)
862
868
qs = Article .objects .annotate (score = compound ).order_by ("-score" )
863
869
self .assertListEqual (lambda : list (qs .all ()), [self .exoplanet , self .mars_mission ])
@@ -937,7 +943,7 @@ def test_multiple_vector_search(self):
937
943
938
944
def test_search_and_filter (self ):
939
945
qs = Article .objects .filter (headline__search = "space exploration" , number__gt = 2 )
940
- self .assertCountEqual (qs . all , [self .icy_moons ])
946
+ self .assertCountEqual (qs , [self .icy_moons ])
941
947
942
948
def test_str_returns_expected_format (self ):
943
949
must_expr = SearchEquals (path = "headline" , value = "space exploration" )
@@ -1003,7 +1009,7 @@ def test_vector_search(self):
1003
1009
limit = 2 ,
1004
1010
)
1005
1011
qs = Article .objects .annotate (score = expr ).order_by ("-score" )
1006
- self .assertCountEqual (qs . all , [self .mars , self .cooking ])
1012
+ self .assertCountEqual (qs , [self .mars , self .cooking ])
1007
1013
1008
1014
def test_str_returns_expected_format (self ):
1009
1015
vector_query = [0.1 , 0.2 , 0.3 ]
0 commit comments