@@ -72,6 +72,25 @@ class WebsiteIndex(AlgoliaIndex):
72
72
index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
73
73
index .reindex_all ()
74
74
75
+ def test_reindex_with_should_index_boolean (self ):
76
+ Website .objects .create (
77
+ name = 'Algolia' ,
78
+ url = 'https://algolia.com' ,
79
+ is_online = True
80
+ )
81
+ index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
82
+ class WebsiteIndex (AlgoliaIndex ):
83
+ settings = {
84
+ 'replicas' : [
85
+ index .index_name + '_name_asc' ,
86
+ index .index_name + '_name_desc'
87
+ ]
88
+ }
89
+ should_index = 'is_online'
90
+
91
+ index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
92
+ index .reindex_all ()
93
+
75
94
def test_custom_objectID (self ):
76
95
class UserIndex (AlgoliaIndex ):
77
96
custom_objectID = 'username'
@@ -382,3 +401,22 @@ class ExampleIndex(AlgoliaIndex):
382
401
index = ExampleIndex (Example , self .client , settings .ALGOLIA )
383
402
with self .assertRaises (AlgoliaIndexError , msg = "We should raise when the should_index property is not boolean" ):
384
403
index ._should_index (self .example )
404
+
405
+ def test_save_record_should_index_boolean (self ):
406
+ website = Website .objects .create (
407
+ name = 'Algolia' ,
408
+ url = 'https://algolia.com' ,
409
+ is_online = True
410
+ )
411
+ index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
412
+ class WebsiteIndex (AlgoliaIndex ):
413
+ settings = {
414
+ 'replicas' : [
415
+ index .index_name + '_name_asc' ,
416
+ index .index_name + '_name_desc'
417
+ ]
418
+ }
419
+ should_index = 'is_online'
420
+
421
+ index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
422
+ index .save_record (website )
0 commit comments