2
2
import datetime
3
3
from decimal import Decimal
4
4
import logging as std_logging
5
+ import operator
5
6
6
7
import pyelasticsearch
7
8
import requests
@@ -294,7 +295,7 @@ def test_remove(self):
294
295
295
296
self .sb .remove (self .sample_objs [0 ])
296
297
self .assertEqual (self .raw_search ('*:*' )['hits' ]['total' ], 2 )
297
- self .assertEqual ([res ['_source' ] for res in self .raw_search ('*:*' )['hits' ]['hits' ]], [
298
+ self .assertEqual (sorted ( [res ['_source' ] for res in self .raw_search ('*:*' )['hits' ]['hits' ]], key = operator . itemgetter ( 'django_id' )) , [
298
299
{
299
300
'django_id' : '2' ,
300
301
'django_ct' : 'core.mockmodel' ,
@@ -343,12 +344,12 @@ def test_search(self):
343
344
344
345
self .assertEqual (self .sb .search ('' ), {'hits' : 0 , 'results' : []})
345
346
self .assertEqual (self .sb .search ('*:*' )['hits' ], 3 )
346
- self .assertEqual ([result .pk for result in self .sb .search ('*:*' )['results' ]], [u'2' , u'1' , u'3' ])
347
+ self .assertEqual (set ( [result .pk for result in self .sb .search ('*:*' )['results' ]]), set ( [u'2' , u'1' , u'3' ]) )
347
348
348
349
self .assertEqual (self .sb .search ('' , highlight = True ), {'hits' : 0 , 'results' : []})
349
350
self .assertEqual (self .sb .search ('Index' , highlight = True )['hits' ], 3 )
350
- self .assertEqual ([result .highlighted for result in self .sb .search ('Index' , highlight = True )['results' ]],
351
- [[ u'<em>Indexed</em>!\n 2' ], [ u'<em>Indexed</em>!\n 1' ], [ u'<em>Indexed</em>!\n 3' ] ])
351
+ self .assertEqual (sorted ( [result .highlighted [ 0 ] for result in self .sb .search ('Index' , highlight = True )['results' ]]) ,
352
+ [u'<em>Indexed</em>!\n 1' , u'<em>Indexed</em>!\n 2' , u'<em>Indexed</em>!\n 3' ])
352
353
353
354
self .assertEqual (self .sb .search ('Indx' )['hits' ], 0 )
354
355
self .assertEqual (self .sb .search ('indaxed' )['spelling_suggestion' ], 'indexed' )
@@ -640,8 +641,8 @@ def test_slice(self):
640
641
641
642
reset_search_queries ()
642
643
self .assertEqual (len (connections ['default' ].queries ), 0 )
643
- results = self .sqs .all ()
644
- self .assertEqual (int (results [21 ].pk ), 18 )
644
+ results = self .sqs .all (). order_by ( 'pub_date' )
645
+ self .assertEqual (int (results [21 ].pk ), 22 )
645
646
self .assertEqual (len (connections ['default' ].queries ), 1 )
646
647
647
648
def test_count (self ):
@@ -768,7 +769,7 @@ def test_related_load_all(self):
768
769
self .assertEqual (sqs [2 ].object .foo , u'In addition, you may specify other fields to be populated along with the document. In this case, we also index the user who authored the document as well as the date the document was published. The variable you assign the SearchField to should directly map to the field your search backend is expecting. You instantiate most search fields with a parameter that points to the attribute of the object to populate that field with.' )
769
770
770
771
def test_related_load_all_queryset (self ):
771
- sqs = self .rsqs .load_all ()
772
+ sqs = self .rsqs .load_all (). order_by ( 'pub_date' )
772
773
self .assertEqual (len (sqs ._load_all_querysets ), 0 )
773
774
774
775
sqs = sqs .load_all_queryset (MockModel , MockModel .objects .filter (id__gt = 1 ))
@@ -780,7 +781,7 @@ def test_related_load_all_queryset(self):
780
781
self .assertTrue (isinstance (sqs , SearchQuerySet ))
781
782
self .assertEqual (len (sqs ._load_all_querysets ), 1 )
782
783
self .assertEqual (set ([obj .object .id for obj in sqs ]), set ([12 , 17 , 11 , 16 , 23 , 15 , 22 , 14 , 19 , 21 , 13 , 18 , 20 ]))
783
- self .assertEqual (set ([obj .object .id for obj in sqs [10 :20 ]]), set ([13 , 18 , 20 ]))
784
+ self .assertEqual (set ([obj .object .id for obj in sqs [10 :20 ]]), set ([21 , 22 , 23 ]))
784
785
785
786
def test_related_iter (self ):
786
787
reset_search_queries ()
@@ -799,14 +800,14 @@ def test_related_slice(self):
799
800
800
801
reset_search_queries ()
801
802
self .assertEqual (len (connections ['default' ].queries ), 0 )
802
- results = self .rsqs .all ()
803
- self .assertEqual (int (results [21 ].pk ), 18 )
803
+ results = self .rsqs .all (). order_by ( 'pub_date' )
804
+ self .assertEqual (int (results [21 ].pk ), 22 )
804
805
self .assertEqual (len (connections ['default' ].queries ), 4 )
805
806
806
807
reset_search_queries ()
807
808
self .assertEqual (len (connections ['default' ].queries ), 0 )
808
- results = self .rsqs .all ()
809
- self .assertEqual (set ([int (result .pk ) for result in results [20 :30 ]]), set ([13 , 18 , 20 ]))
809
+ results = self .rsqs .all (). order_by ( 'pub_date' )
810
+ self .assertEqual (set ([int (result .pk ) for result in results [20 :30 ]]), set ([21 , 22 , 23 ]))
810
811
self .assertEqual (len (connections ['default' ].queries ), 4 )
811
812
812
813
def test_related_manual_iter (self ):
0 commit comments