@@ -256,33 +256,38 @@ class WebsiteIndex(AlgoliaIndex):
256
256
rule = {
257
257
"objectID" : "my-rule" ,
258
258
"condition" : {"pattern" : "some text" , "anchoring" : "is" },
259
- "consequence" : {"params" : {"query " : "other text" }},
259
+ "consequence" : {"params" : {"hitsPerPage " : 42 }},
260
260
}
261
261
262
262
self .assertIsNotNone (self .index .index_name )
263
263
264
264
if self .index .index_name is None :
265
265
return
266
266
267
- self .client .save_rule (self .index .index_name , rule ["objectID" ], rule )
267
+ self .client .save_rule_with_http_info (
268
+ self .index .index_name , rule ["objectID" ], rule
269
+ )
268
270
269
271
# When reindexing with no settings on the instance
270
272
self .index = WebsiteIndex (Website , self .client , settings .ALGOLIA )
271
273
self .index .reindex_all ()
272
274
273
- # Expect the rules to be kept across reindex
274
- def remove_metadata (rule ):
275
- copy = dict (rule )
276
- del copy ["_metadata" ]
277
- return copy
278
-
279
275
rules = []
280
- self .index .__client .browse_rules (
281
- self .index .index_name , lambda _resp : rules .extend (_resp .hits )
276
+ self .client .browse_rules (
277
+ self .index .index_name ,
278
+ lambda _resp : rules .extend ([_hit .to_dict () for _hit in _resp .hits ]),
282
279
)
283
- rules = list (map (remove_metadata , rules ))
284
280
self .assertEqual (len (rules ), 1 , "There should only be one rule" )
285
- self .assertIn (rule , rules , "The existing rule should be kept over reindex" )
281
+ self .assertEqual (
282
+ rules [0 ]["consequence" ],
283
+ rule ["consequence" ],
284
+ "The existing rule should be kept over reindex" ,
285
+ )
286
+ self .assertEqual (
287
+ rules [0 ]["objectID" ],
288
+ rule ["objectID" ],
289
+ "The existing rule should be kept over reindex" ,
290
+ )
286
291
287
292
def test_reindex_with_synonyms (self ):
288
293
# Given an existing index defined with settings
@@ -313,11 +318,11 @@ class WebsiteIndex(AlgoliaIndex):
313
318
self .index .reindex_all ()
314
319
315
320
# Expect the synonyms to be kept across reindex
316
- resp = self .client .search_synonyms (index_name = self .index .index_name )
317
- print (resp , self .index .index_name )
318
-
319
321
synonyms = []
320
- self .client .browse_synonyms (self .index .index_name , lambda _resp : print (_resp ))
322
+ self .client .browse_synonyms (
323
+ self .index .index_name ,
324
+ lambda _resp : synonyms .extend ([_hit .to_dict () for _hit in _resp .hits ]),
325
+ )
321
326
self .assertEqual (len (synonyms ), 1 , "There should only be one synonym" )
322
327
self .assertIn (
323
328
synonym , synonyms , "The existing synonym should be kept over reindex"
0 commit comments