Skip to content

Commit 5fed41b

Browse files
committed
PYTHON-807 Silence warnings when testing Database.error().
1 parent b1183ad commit 5fed41b

File tree

1 file changed

+41
-39
lines changed

1 file changed

+41
-39
lines changed

test/test_database.py

Lines changed: 41 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -297,37 +297,38 @@ def test_profiling_info(self):
297297

298298
@client_context.require_no_mongos
299299
def test_errors(self):
300-
# We must call getlasterror, etc. on same socket as the last operation.
301-
db = rs_or_single_client(max_pool_size=1).pymongo_test
302-
db.reset_error_history()
303-
self.assertEqual(None, db.error())
304-
self.assertEqual(None, db.previous_error())
305-
306-
db.command("forceerror", check=False)
307-
self.assertTrue(db.error())
308-
self.assertTrue(db.previous_error())
309-
310-
db.command("forceerror", check=False)
311-
self.assertTrue(db.error())
312-
prev_error = db.previous_error()
313-
self.assertEqual(prev_error["nPrev"], 1)
314-
del prev_error["nPrev"]
315-
prev_error.pop("lastOp", None)
316-
error = db.error()
317-
error.pop("lastOp", None)
318-
# getLastError includes "connectionId" in recent
319-
# server versions, getPrevError does not.
320-
error.pop("connectionId", None)
321-
self.assertEqual(error, prev_error)
322-
323-
db.test.find_one()
324-
self.assertEqual(None, db.error())
325-
self.assertTrue(db.previous_error())
326-
self.assertEqual(db.previous_error()["nPrev"], 2)
327-
328-
db.reset_error_history()
329-
self.assertEqual(None, db.error())
330-
self.assertEqual(None, db.previous_error())
300+
with ignore_deprecations():
301+
# We must call getlasterror, etc. on same socket as last operation.
302+
db = rs_or_single_client(max_pool_size=1).pymongo_test
303+
db.reset_error_history()
304+
self.assertEqual(None, db.error())
305+
self.assertEqual(None, db.previous_error())
306+
307+
db.command("forceerror", check=False)
308+
self.assertTrue(db.error())
309+
self.assertTrue(db.previous_error())
310+
311+
db.command("forceerror", check=False)
312+
self.assertTrue(db.error())
313+
prev_error = db.previous_error()
314+
self.assertEqual(prev_error["nPrev"], 1)
315+
del prev_error["nPrev"]
316+
prev_error.pop("lastOp", None)
317+
error = db.error()
318+
error.pop("lastOp", None)
319+
# getLastError includes "connectionId" in recent
320+
# server versions, getPrevError does not.
321+
error.pop("connectionId", None)
322+
self.assertEqual(error, prev_error)
323+
324+
db.test.find_one()
325+
self.assertEqual(None, db.error())
326+
self.assertTrue(db.previous_error())
327+
self.assertEqual(db.previous_error()["nPrev"], 2)
328+
329+
db.reset_error_history()
330+
self.assertEqual(None, db.error())
331+
self.assertEqual(None, db.previous_error())
331332

332333
def test_command(self):
333334
db = self.client.admin
@@ -349,16 +350,17 @@ def test_command_with_regex(self):
349350
self.assertTrue(isinstance(doc['r'], Regex))
350351

351352
def test_last_status(self):
352-
# We must call getlasterror on the same socket as the last operation.
353-
db = rs_or_single_client(max_pool_size=1).pymongo_test
354-
db.test.remove({})
355-
db.test.save({"i": 1})
353+
with ignore_deprecations():
354+
# We must call getlasterror on same socket as the last operation.
355+
db = rs_or_single_client(max_pool_size=1).pymongo_test
356+
db.test.remove({})
357+
db.test.save({"i": 1})
356358

357-
db.test.update({"i": 1}, {"$set": {"i": 2}}, w=0)
358-
self.assertTrue(db.last_status()["updatedExisting"])
359+
db.test.update({"i": 1}, {"$set": {"i": 2}}, w=0)
360+
self.assertTrue(db.last_status()["updatedExisting"])
359361

360-
db.test.update({"i": 1}, {"$set": {"i": 500}}, w=0)
361-
self.assertFalse(db.last_status()["updatedExisting"])
362+
db.test.update({"i": 1}, {"$set": {"i": 500}}, w=0)
363+
self.assertFalse(db.last_status()["updatedExisting"])
362364

363365
def test_password_digest(self):
364366
self.assertRaises(TypeError, auth._password_digest, 5)

0 commit comments

Comments
 (0)