Skip to content

Commit 58a80e1

Browse files
Evan Fagerbergacdha
authored andcommitted
Add missing test for atomic update set method (#218)
Thanks @efagerberg for the patch!
1 parent bb4748a commit 58a80e1

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

tests/test_client.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,7 @@ def test_add_with_boost(self):
584584
self.assertEqual(len(res), 5)
585585
self.assertEqual('doc_6', res.docs[0]['id'])
586586

587-
def test_field_update(self):
587+
def test_field_update_inc(self):
588588
originalDocs = self.solr.search('doc')
589589
self.assertEqual(len(originalDocs), 3)
590590
updateList = []
@@ -601,6 +601,25 @@ def test_field_update(self):
601601
self.assertEqual(True, all(updatedDoc[k] == originalDoc[k] for k in updatedDoc.keys()
602602
if k not in ['_version_', 'popularity']))
603603

604+
def test_field_update_set(self):
605+
originalDocs = self.solr.search('doc')
606+
updated_popularity = 10
607+
self.assertEqual(len(originalDocs), 3)
608+
updateList = []
609+
for i, doc in enumerate(originalDocs):
610+
updateList.append({'id': doc['id'], 'popularity': updated_popularity})
611+
self.solr.add(updateList, fieldUpdates={'popularity': 'set'})
612+
613+
updatedDocs = self.solr.search('doc')
614+
self.assertEqual(len(updatedDocs), 3)
615+
for i, (originalDoc, updatedDoc) in enumerate(zip(originalDocs, updatedDocs)):
616+
self.assertEqual(len(updatedDoc.keys()), len(originalDoc.keys()))
617+
self.assertEqual(updatedDoc['popularity'], updated_popularity)
618+
# TODO: change this to use assertSetEqual:
619+
self.assertEqual(True, all(updatedDoc[k] == originalDoc[k] for k in updatedDoc.keys()
620+
if k not in ['_version_', 'popularity']))
621+
622+
def test_field_update_add(self):
604623
self.solr.add([
605624
{
606625
'id': 'multivalued_1',

0 commit comments

Comments
 (0)