Merge pull request #1655 from werat/fix_update_pull_in

Fix pull+in update queries
This commit is contained in:
erdenezul
2018-02-21 13:36:04 +08:00
committed by GitHub
4 changed files with 55 additions and 18 deletions

View File

@@ -28,12 +28,16 @@ class TransformTest(unittest.TestCase):
{'name': {'$exists': True}})
def test_transform_update(self):
class LisDoc(Document):
foo = ListField(StringField())
class DicDoc(Document):
dictField = DictField()
class Doc(Document):
pass
LisDoc.drop_collection()
DicDoc.drop_collection()
Doc.drop_collection()
@@ -51,6 +55,9 @@ class TransformTest(unittest.TestCase):
update = transform.update(DicDoc, pull__dictField__test=doc)
self.assertTrue(isinstance(update["$pull"]["dictField"]["test"], dict))
update = transform.update(LisDoc, pull__foo__in=['a'])
self.assertEqual(update, {'$pull': {'foo': {'$in': ['a']}}})
def test_query_field_name(self):
"""Ensure that the correct field name is used when querying.
"""