PYTHON-1604 - Stop testing reindex with mongos and MongoDB 4.1+
This commit is contained in:
parent
a537a711d1
commit
587e448b69
@ -594,6 +594,13 @@ class ClientContext(object):
|
||||
new_func = self.require_version_min(4, 0, 0, -1)(func)
|
||||
return self.require_replica_set(new_func)
|
||||
|
||||
@property
|
||||
def supports_reindex(self):
|
||||
"""Does the connected server support reindex?"""
|
||||
return not (
|
||||
self.version.at_least(4, 1, 0) and
|
||||
self.is_mongos)
|
||||
|
||||
|
||||
# Reusable client context
|
||||
client_context = ClientContext()
|
||||
|
||||
@ -332,6 +332,9 @@ class TestCollection(IntegrationTest):
|
||||
mode="off")
|
||||
|
||||
def test_reindex(self):
|
||||
if not client_context.supports_reindex:
|
||||
raise unittest.SkipTest(
|
||||
"reindex is no longer supported by mongos 4.1+")
|
||||
db = self.db
|
||||
db.drop_collection("test")
|
||||
db.test.insert_one({"foo": "bar", "who": "what", "when": "how"})
|
||||
|
||||
@ -27,7 +27,6 @@ from pymongo.errors import (ConfigurationError,
|
||||
OperationFailure)
|
||||
from pymongo.monotonic import time as _time
|
||||
from pymongo.read_concern import ReadConcern
|
||||
from pymongo.write_concern import WriteConcern
|
||||
from test import IntegrationTest, client_context, db_user, db_pwd, unittest, SkipTest
|
||||
from test.utils import ignore_deprecations, rs_or_single_client, EventListener
|
||||
|
||||
@ -321,12 +320,15 @@ class TestSession(IntegrationTest):
|
||||
(coll.count, [], {}),
|
||||
(coll.count_documents, [{}], {}),
|
||||
(coll.inline_map_reduce, ['function() {}', 'function() {}'], {}),
|
||||
(coll.reindex, [], {}),
|
||||
(coll.list_indexes, [], {}),
|
||||
(coll.index_information, [], {}),
|
||||
(coll.options, [], {}),
|
||||
(coll.aggregate, [[]], {}),
|
||||
])
|
||||
|
||||
if client_context.supports_reindex:
|
||||
ops.append((coll.reindex, [], {}))
|
||||
|
||||
self._test_ops(client, *ops)
|
||||
|
||||
@client_context.require_no_mongos
|
||||
@ -922,8 +924,10 @@ class TestCausalConsistency(unittest.TestCase):
|
||||
lambda coll, session: coll.drop_index("foo_1", session=session))
|
||||
self._test_writes(
|
||||
lambda coll, session: coll.drop_indexes(session=session))
|
||||
self._test_writes(
|
||||
lambda coll, session: coll.reindex(session=session))
|
||||
|
||||
if client_context.supports_reindex:
|
||||
self._test_writes(
|
||||
lambda coll, session: coll.reindex(session=session))
|
||||
|
||||
def _test_no_read_concern(self, op):
|
||||
coll = self.client.pymongo_test.test
|
||||
@ -977,8 +981,6 @@ class TestCausalConsistency(unittest.TestCase):
|
||||
lambda coll, session: coll.drop_index("foo_1", session=session))
|
||||
self._test_no_read_concern(
|
||||
lambda coll, session: coll.drop_indexes(session=session))
|
||||
self._test_no_read_concern(
|
||||
lambda coll, session: coll.reindex(session=session))
|
||||
self._test_no_read_concern(
|
||||
lambda coll, session: list(
|
||||
coll.aggregate([{"$out": "aggout"}], session=session)))
|
||||
@ -993,6 +995,10 @@ class TestCausalConsistency(unittest.TestCase):
|
||||
self._test_no_read_concern(
|
||||
lambda coll, session: coll.find({}, session=session).explain())
|
||||
|
||||
if client_context.supports_reindex:
|
||||
self._test_no_read_concern(
|
||||
lambda coll, session: coll.reindex(session=session))
|
||||
|
||||
@client_context.require_no_standalone
|
||||
def test_get_more_does_not_include_read_concern(self):
|
||||
coll = self.client.pymongo_test.test
|
||||
|
||||
Loading…
Reference in New Issue
Block a user