1
1
# coding=utf-8
2
+ import time
2
3
from django .conf import settings
3
4
from django .test import TestCase
4
5
@@ -79,6 +80,7 @@ def test_index_name_settings(self):
79
80
80
81
def test_reindex_with_replicas (self ):
81
82
index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
83
+
82
84
class WebsiteIndex (AlgoliaIndex ):
83
85
settings = {
84
86
'replicas' : [
@@ -97,6 +99,7 @@ def test_reindex_with_should_index_boolean(self):
97
99
is_online = True
98
100
)
99
101
index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
102
+
100
103
class WebsiteIndex (AlgoliaIndex ):
101
104
settings = {
102
105
'replicas' : [
@@ -109,6 +112,28 @@ class WebsiteIndex(AlgoliaIndex):
109
112
index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
110
113
index .reindex_all ()
111
114
115
+ def test_reindex_no_settings (self ):
116
+ self .maxDiff = None
117
+
118
+ class WebsiteIndex (AlgoliaIndex ):
119
+ foo = {}
120
+
121
+ # Given an existing index with settings
122
+ index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
123
+ index .settings = {'hitsPerPage' : 42 }
124
+ index .reindex_all ()
125
+ time .sleep (10 ) # FIXME: Refactor reindex_all to use waitTask
126
+ index_settings = index .get_settings ()
127
+
128
+ # When reindexing with no current settings
129
+ index .settings = None
130
+ index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
131
+ index .reindex_all ()
132
+
133
+ # Expect the settings to be kept across reindex
134
+ self .assertEqual (index .get_settings (), index_settings ,
135
+ "An index whose model has no settings should keep its settings after reindex" )
136
+
112
137
def test_custom_objectID (self ):
113
138
class UserIndex (AlgoliaIndex ):
114
139
custom_objectID = 'username'
@@ -432,6 +457,7 @@ def test_save_record_should_index_boolean(self):
432
457
is_online = True
433
458
)
434
459
index = AlgoliaIndex (Website , self .client , settings .ALGOLIA )
460
+
435
461
class WebsiteIndex (AlgoliaIndex ):
436
462
settings = {
437
463
'replicas' : [
0 commit comments