From 13cd9bee6f7fa528af226a6db75c7f7e4a8f662e Mon Sep 17 00:00:00 2001 From: Bernie Hackett Date: Thu, 1 May 2014 19:20:33 -0700 Subject: [PATCH] Fix a few tests with really old mongos versions. --- test/test_bulk.py | 3 +++ test/test_collection.py | 5 +++-- test/test_database.py | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/test/test_bulk.py b/test/test_bulk.py index 88dee584b..3bffdb740 100644 --- a/test/test_bulk.py +++ b/test/test_bulk.py @@ -893,10 +893,13 @@ class TestBulkWriteConcern(BulkTestBase): ismaster = client.test.command('ismaster') self.is_repl = bool(ismaster.get('setName')) self.w = len(ismaster.get("hosts", [])) + self.client = client self.coll = client.pymongo_test.test self.coll.remove() def test_fsync_and_j(self): + if not version.at_least(self.client, (1, 8, 2)): + raise SkipTest("Need at least MongoDB 1.8.2") batch = self.coll.initialize_ordered_bulk_op() batch.insert({'a': 1}) self.assertRaises( diff --git a/test/test_collection.py b/test/test_collection.py index efbfd93ed..091afdb7a 100644 --- a/test/test_collection.py +++ b/test/test_collection.py @@ -1343,8 +1343,9 @@ class TestCollection(unittest.TestCase): self.fail("WTimeoutError was not raised") # can't use fsync and j options together - self.assertRaises(OperationFailure, self.db.test.insert, - {"_id": 1}, j=True, fsync=True) + if version.at_least(self.client, (1, 8, 2)): + self.assertRaises(OperationFailure, self.db.test.insert, + {"_id": 1}, j=True, fsync=True) def test_manual_last_error(self): self.db.test.save({"x": 1}, w=0) diff --git a/test/test_database.py b/test/test_database.py index 0756eb8d5..870b9cb51 100644 --- a/test/test_database.py +++ b/test/test_database.py @@ -953,8 +953,8 @@ class TestDatabase(unittest.TestCase): self.assertRaises(UserWarning, self.client.pymongo_test.command, 'ping', read_preference=ReadPreference.SECONDARY) try: - self.client.pymongo_test.command( - 'dbStats', read_preference=ReadPreference.SECONDARY) + self.client.pymongo_test.command('dbStats', + read_preference=ReadPreference.SECONDARY_PREFERRED) except UserWarning: self.fail("Shouldn't have raised UserWarning.") finally: