Skip to content

Commit 30af616

Browse files
committed
PYTHON-821 - Migrate most tests to new the CRUD API.
1 parent 13f20bb commit 30af616

20 files changed

Lines changed: 475 additions & 497 deletions

test/high_availability/test_ha.py

Lines changed: 39 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
from pymongo.mongo_client import MongoClient
3333
from pymongo.read_preferences import ReadPreference
3434
from pymongo.server_description import ServerDescription
35+
from pymongo.write_concern import WriteConcern
3536
from test import SkipTest, unittest, utils, client_knobs
3637
from test.utils import one, wait_until, connected
3738
from test.version import Version
@@ -96,12 +97,13 @@ def setUp(self):
9697
def test_secondary_connection(self):
9798
self.c = MongoClient(self.seed, replicaSet=self.name)
9899
wait_until(lambda: len(self.c.secondaries), "discover secondary")
99-
db = self.c.pymongo_test
100-
101100
# Wait for replication...
102101
w = len(self.c.secondaries) + 1
103-
db.test.remove({}, w=w)
104-
db.test.insert({'foo': 'bar'}, w=w)
102+
db = self.c.get_database("pymongo_test",
103+
write_concern=WriteConcern(w=w))
104+
105+
db.test.delete_many({})
106+
db.test.insert_one({'foo': 'bar'})
105107

106108
# Test direct connection to a primary or secondary
107109
primary_host, primary_port = ha_tools.get_primary().split(':')
@@ -149,7 +151,9 @@ def test_secondary_connection(self):
149151
# direct connection raises AutoReconnect('not master'), MongoClient
150152
# should do the same for unacknowledged writes.
151153
try:
152-
client.pymongo_test.test.insert({}, w=0)
154+
client.get_database(
155+
"pymongo_test",
156+
write_concern=WriteConcern(w=0)).test.insert_one({})
153157
except AutoReconnect as e:
154158
self.assertEqual('not master', e.args[0])
155159
else:
@@ -167,7 +171,9 @@ def test_secondary_connection(self):
167171

168172
# See explanation above
169173
try:
170-
client.pymongo_test.test.insert({}, w=0)
174+
client.get_database(
175+
"pymongo_test",
176+
write_concern=WriteConcern(w=0)).test.insert_one({})
171177
except AutoReconnect as e:
172178
self.assertEqual('not master', e.args[0])
173179
else:
@@ -389,10 +395,11 @@ def test_writes_with_failover(self):
389395
wait_until(lambda: c.primary, "discover primary")
390396
wait_until(lambda: len(c.secondaries) == 2, "discover secondaries")
391397
primary = c.primary
392-
db = c.pymongo_test
393398
w = len(c.secondaries) + 1
394-
db.test.remove({}, w=w)
395-
db.test.insert({'foo': 'bar'}, w=w)
399+
db = c.get_database("pymongo_test",
400+
write_concern=WriteConcern(w=w))
401+
db.test.delete_many({})
402+
db.test.insert_one({'foo': 'bar'})
396403
self.assertEqual('bar', db.test.find_one()['foo'])
397404

398405
killed = ha_tools.kill_primary(9)
@@ -406,7 +413,7 @@ def test_writes_with_failover(self):
406413
# while we wait for new primary.
407414
for _ in xrange(10000):
408415
try:
409-
db.test.insert({'bar': 'baz'})
416+
db.test.insert_one({'bar': 'baz'})
410417

411418
# No error, found primary.
412419
break
@@ -438,11 +445,12 @@ def iter_cursor(cursor):
438445
pass
439446
return True
440447

441-
db = c.pymongo_test
442448
w = len(c.secondaries) + 1
443-
db.test.remove({}, w=w)
449+
db = c.get_database("pymongo_test",
450+
write_concern=WriteConcern(w=w))
451+
db.test.delete_many({})
444452
# Force replication
445-
db.test.insert([{'foo': i} for i in xrange(10)], w=w)
453+
db.test.insert_many([{'foo': i} for i in xrange(10)])
446454
self.assertEqual(10, db.test.count())
447455

448456
db.read_preference = SECONDARY_PREFERRED
@@ -505,11 +513,11 @@ def setUp(self):
505513
self.other_secondary_dc = {'dc': self.other_secondary_tags['dc']}
506514

507515
self.c = MongoClient(self.seed, replicaSet=self.name)
508-
self.db = self.c.pymongo_test
509516
self.w = len(self.c.secondaries) + 1
510-
self.db.test.remove({}, w=self.w)
511-
self.db.test.insert(
512-
[{'foo': i} for i in xrange(10)], w=self.w)
517+
self.db = self.c.get_database("pymongo_test",
518+
write_concern=WriteConcern(w=self.w))
519+
self.db.test.delete_many({})
520+
self.db.test.insert_many([{'foo': i} for i in xrange(10)])
513521

514522
self.clear_ping_times()
515523

@@ -754,8 +762,9 @@ def setUp(self):
754762

755763
def test_auth_during_failover(self):
756764
self.assertTrue(self.db.authenticate('user', 'userpass'))
757-
self.assertTrue(self.db.foo.insert({'foo': 'bar'},
758-
w=3, wtimeout=3000))
765+
db = self.db.connection.get_database(
766+
self.db.name, write_concern=WriteConcern(w=3, wtimeout=3000))
767+
self.assertTrue(db.foo.insert_one({'foo': 'bar'})
759768
self.db.logout()
760769
self.assertRaises(OperationFailure, self.db.foo.find_one)
761770

@@ -820,7 +829,7 @@ def setUp(self):
820829

821830
def test_mongos_ha(self):
822831
coll = self.client[self.dbname].test
823-
self.assertTrue(coll.insert({'foo': 'bar'}))
832+
coll.insert_one({'foo': 'bar'}))
824833

825834
first = '%s:%d' % (self.client.host, self.client.port)
826835
ha_tools.kill_mongos(first)
@@ -873,13 +882,11 @@ def test_get_last_error_defaults(self):
873882

874883
self.c.admin.command("replSetReconfig", replset)
875884

876-
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.insert,
885+
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.insert_one,
877886
{'_id': 0})
878-
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.save,
879-
{'_id': 0, "a": 5})
880-
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.update,
887+
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.update_one,
881888
{'_id': 0}, {"$set": {"a": 10}})
882-
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.remove,
889+
self.assertRaises(WTimeoutError, self.c.pymongo_test.test.delete_one,
883890
{'_id': 0})
884891

885892

@@ -893,8 +900,10 @@ def setUp(self):
893900

894901
def test_ship_of_theseus(self):
895902
c = MongoClient(self.seed, replicaSet=self.name)
896-
db = c.pymongo_test
897-
db.test.insert({}, w=len(c.secondaries) + 1)
903+
db = c.get_database(
904+
"pymongo_test",
905+
write_concern=WriteConcern(w=len(c.secondaries) + 1))
906+
db.test.insert_one({})
898907
find_one = db.test.find_one
899908

900909
primary = ha_tools.get_primary()
@@ -985,9 +994,10 @@ def test_last_error(self):
985994
wait_until(lambda: c.primary, "discover primary")
986995
wait_until(lambda: c.secondaries, "discover secondary")
987996
ha_tools.stepdown_primary()
988-
db = c.pymongo_test
997+
db = c.get_database(
998+
"pymongo_test", write_concern=WriteConcern(w=0))
989999

990-
db.test.insert({}, w=0)
1000+
db.test.insert_one({})
9911001
response = db.error()
9921002
self.assertTrue('err' in response and 'not master' in response['err'])
9931003
wait_until(lambda: len(c.secondaries) == 2, "discover two secondaries")

test/mod_wsgi_test/mod_wsgi_test.wsgi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ collection = client.test.test
3939
ndocs = 20
4040

4141
collection.drop()
42-
collection.insert([{'i': i} for i in range(ndocs)])
42+
collection.insert_many([{'i': i} for i in range(ndocs)])
4343
client.disconnect() # Discard main thread's request socket.
4444

4545
try:

test/test_auth.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,8 @@ def test_gssapi_threaded(self):
161161
# multiple sockets from the pool concurrently, proving that
162162
# auto-authentication works with GSSAPI.
163163
collection = client.test.collection
164-
collection.remove()
165-
collection.insert({'_id': 1})
164+
collection.drop()
165+
collection.insert_one({'_id': 1})
166166

167167
threads = []
168168
for _ in range(4):
@@ -239,14 +239,14 @@ def test_sasl_plain_bad_credentials(self):
239239
self.assertRaises(OperationFailure, client.ldap.authenticate,
240240
'not-user', SASL_PASS, SASL_DB, 'PLAIN')
241241
self.assertRaises(OperationFailure, client.ldap.test.find_one)
242-
self.assertRaises(OperationFailure, client.ldap.test.insert,
242+
self.assertRaises(OperationFailure, client.ldap.test.insert_one,
243243
{"failed": True})
244244

245245
# Bad password
246246
self.assertRaises(OperationFailure, client.ldap.authenticate,
247247
SASL_USER, 'not-pwd', SASL_DB, 'PLAIN')
248248
self.assertRaises(OperationFailure, client.ldap.test.find_one)
249-
self.assertRaises(OperationFailure, client.ldap.test.insert,
249+
self.assertRaises(OperationFailure, client.ldap.test.insert_one,
250250
{"failed": True})
251251

252252
def auth_string(user, password):
@@ -412,8 +412,8 @@ def tearDown(self):
412412
self.client.pymongo_test2.foo.drop()
413413

414414
def test_delegated_auth(self):
415-
self.client.pymongo_test2.foo.remove()
416-
self.client.pymongo_test2.foo.insert({})
415+
self.client.pymongo_test2.foo.drop()
416+
self.client.pymongo_test2.foo.insert_one({})
417417
# User definition with no roles in pymongo_test.
418418
self.client.pymongo_test.add_user('user', 'pass', roles=[])
419419
# Delegate auth to pymongo_test.

test/test_binary.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ def test_legacy_java_uuid_roundtrip(self):
187187
coll = db.get_collection(
188188
'java_uuid', CodecOptions(uuid_representation=JAVA_LEGACY))
189189

190-
coll.insert(docs)
190+
coll.insert_many(docs)
191191
self.assertEqual(5, coll.count())
192192
for d in coll.find():
193193
self.assertEqual(d['newguid'], uuid.UUID(d['newguidstring']))
@@ -257,7 +257,7 @@ def test_legacy_csharp_uuid_roundtrip(self):
257257
coll = db.get_collection(
258258
'csharp_uuid', CodecOptions(uuid_representation=CSHARP_LEGACY))
259259

260-
coll.insert(docs)
260+
coll.insert_many(docs)
261261
self.assertEqual(5, coll.count())
262262
for d in coll.find():
263263
self.assertEqual(d['newguid'], uuid.UUID(d['newguidstring']))
@@ -284,7 +284,7 @@ def test_uuid_queries(self):
284284
coll.drop()
285285

286286
uu = uuid.uuid4()
287-
coll.insert({'uuid': Binary(uu.bytes, 3)})
287+
coll.insert_one({'uuid': Binary(uu.bytes, 3)})
288288
self.assertEqual(1, coll.count())
289289

290290
# Test UUIDLegacy queries.
@@ -297,7 +297,7 @@ def test_uuid_queries(self):
297297
self.assertEqual(uu, retrieved['uuid'])
298298

299299
# Test regular UUID queries (using subtype 4).
300-
coll.insert({'uuid': uu})
300+
coll.insert_one({'uuid': uu})
301301
self.assertEqual(2, coll.count())
302302
cur = coll.find({'uuid': uu})
303303
self.assertEqual(1, cur.count())

0 commit comments

Comments
 (0)