fix tests for diff mongo vers
This commit is contained in:
@@ -12,6 +12,7 @@ from bson import DBRef, ObjectId
|
||||
from pymongo.errors import DuplicateKeyError
|
||||
from six import iteritems
|
||||
|
||||
from mongoengine.mongodb_support import get_mongodb_version, MONGODB_36, MONGODB_34
|
||||
from mongoengine.pymongo_support import list_collection_names
|
||||
from tests import fixtures
|
||||
from tests.fixtures import (PickleEmbedded, PickleTest, PickleSignalsTest,
|
||||
@@ -467,10 +468,13 @@ class InstanceTest(MongoDBTestCase):
|
||||
doc = Animal(superphylum='Deuterostomia')
|
||||
doc.save()
|
||||
|
||||
mongo_db = get_mongodb_version()
|
||||
CMD_QUERY_KEY = 'command' if mongo_db >= MONGODB_36 else 'query'
|
||||
|
||||
with query_counter() as q:
|
||||
doc.reload()
|
||||
query_op = q.db.system.profile.find({'ns': 'mongoenginetest.animal'})[0]
|
||||
self.assertEqual(set(query_op['query']['filter'].keys()), set(['_id', 'superphylum']))
|
||||
self.assertEqual(set(query_op[CMD_QUERY_KEY]['filter'].keys()), set(['_id', 'superphylum']))
|
||||
|
||||
Animal.drop_collection()
|
||||
|
||||
@@ -501,12 +505,17 @@ class InstanceTest(MongoDBTestCase):
|
||||
doc = Animal(is_mammal=True, name='Dog')
|
||||
doc.save()
|
||||
|
||||
mongo_db = get_mongodb_version()
|
||||
|
||||
with query_counter() as q:
|
||||
doc.name = 'Cat'
|
||||
doc.save()
|
||||
query_op = q.db.system.profile.find({'ns': 'mongoenginetest.animal'})[0]
|
||||
self.assertEqual(query_op['op'], 'update')
|
||||
self.assertEqual(set(query_op['query'].keys()), set(['_id', 'is_mammal']))
|
||||
if mongo_db == MONGODB_34:
|
||||
self.assertEqual(set(query_op['query'].keys()), set(['_id', 'is_mammal']))
|
||||
else:
|
||||
self.assertEqual(set(query_op['command']['q'].keys()), set(['_id', 'is_mammal']))
|
||||
|
||||
Animal.drop_collection()
|
||||
|
||||
|
Reference in New Issue
Block a user