Skip to content

Commit c57e9df

Browse files
committed
fix(test): Fix DB connection name to support tox parallel runners
1 parent 94e3633 commit c57e9df

36 files changed

Lines changed: 240 additions & 215 deletions

tests/asynchronous/all_warnings/test_warnings.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@
1010
from mongoengine import *
1111
from mongoengine.base.common import _document_registry
1212
from tests.asynchronous.utils import reset_async_connections
13+
from tests.utils import MONGO_TEST_DB
1314

1415

1516
class TestAllWarnings(unittest.IsolatedAsyncioTestCase):
1617

1718
async def asyncSetUp(self):
18-
await async_connect(db="mongoenginetest")
19+
await async_connect(db=MONGO_TEST_DB)
1920
self.warning_list = []
2021
self.showwarning_default = warnings.showwarning
2122
warnings.showwarning = self.append_to_warning_list

tests/asynchronous/document/test_class_methods.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,13 @@
44
from mongoengine.pymongo_support import async_list_collection_names
55
from mongoengine.base.queryset import NULLIFY, PULL
66
from tests.asynchronous.utils import reset_async_connections
7+
from tests.utils import MONGO_TEST_DB
78

89

910
class TestClassMethods(unittest.IsolatedAsyncioTestCase):
1011

1112
async def asyncSetUp(self):
12-
await async_connect(db="mongoenginetest")
13+
await async_connect(db=MONGO_TEST_DB)
1314
self.db = await async_get_db()
1415

1516
class Person(Document):

tests/asynchronous/document/test_indexes.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,12 @@
1515
)
1616
from mongoengine.registry import _CollectionRegistry
1717
from tests.asynchronous.utils import reset_async_connections
18+
from tests.utils import MONGO_TEST_DB
1819

1920

2021
class TestIndexes(unittest.IsolatedAsyncioTestCase):
2122
async def asyncSetUp(self):
22-
self.connection = await async_connect(db="mongoenginetest")
23+
self.connection = await async_connect(db=MONGO_TEST_DB)
2324
self.db = async_get_db()
2425

2526
class Person(Document):
@@ -981,7 +982,7 @@ async def test_indexes_after_database_drop(self):
981982
# Use a new connection and database since dropping the database could
982983
# cause concurrent tests to fail.
983984
tmp_alias = "test_indexes_after_database_drop"
984-
connection = await async_connect(db="tempdatabase", alias=tmp_alias)
985+
connection = await async_connect(db=f"{MONGO_TEST_DB}_tempdb", alias=tmp_alias)
985986

986987
class BlogPost(Document):
987988
slug = StringField(unique=True)
@@ -993,7 +994,7 @@ class BlogPost(Document):
993994
await BlogPost(slug="test").asave()
994995

995996
# Drop the Database
996-
await connection.drop_database("tempdatabase")
997+
await connection.drop_database(f"{MONGO_TEST_DB}_tempdb")
997998
await BlogPost(slug="test").asave()
998999
# No error because the index was not recreated after dropping the database.
9991000
await BlogPost(slug="test").asave()
@@ -1012,12 +1013,12 @@ class BlogPost2(Document):
10121013
await BlogPost2(slug="test").asave()
10131014

10141015
# Drop the Database
1015-
await connection.drop_database("tempdatabase")
1016+
await connection.drop_database(f"{MONGO_TEST_DB}_tempdb")
10161017
await BlogPost2(slug="test").asave()
10171018
# Error because ensure_indexes is run on every save().
10181019
with pytest.raises(NotUniqueError):
10191020
await BlogPost2(slug="test").asave()
1020-
await connection.drop_database("tempdatabase")
1021+
await connection.drop_database(f"{MONGO_TEST_DB}_tempdb")
10211022

10221023
async def test_index_dont_send_cls_option(self):
10231024
"""

tests/asynchronous/document/test_instance.py

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
async_get_as_pymongo,
5050
requires_mongodb_gte_44, reset_async_connections,
5151
)
52+
from tests.utils import MONGO_TEST_DB
5253

5354
TEST_IMAGE_PATH = os.path.join(os.path.dirname(__file__), "../fields/mongoengine.png")
5455

@@ -491,7 +492,7 @@ class Animal(Document):
491492
CMD_QUERY_KEY = "command"
492493
async with async_query_counter() as q:
493494
await doc.areload()
494-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.animal"})).to_list())[0]
495+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.animal"})).to_list())[0]
495496
assert set(query_op[CMD_QUERY_KEY]["filter"].keys()) == {
496497
"_id",
497498
"superphylum",
@@ -508,7 +509,7 @@ class Person(Document):
508509
CMD_QUERY_KEY = "command"
509510
async with async_query_counter() as q:
510511
await doc.areload()
511-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.person"})).to_list())[0]
512+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.person"})).to_list())[0]
512513
assert set(query_op[CMD_QUERY_KEY]["filter"].keys()) == {"_id", "country"}
513514

514515
async def test_reload_sharded_nested(self):
@@ -542,7 +543,7 @@ class Animal(Document):
542543
async with async_query_counter() as q:
543544
doc.name = "Cat"
544545
await doc.asave()
545-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.animal"})).to_list())[0]
546+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.animal"})).to_list())[0]
546547
assert query_op["op"] == "update"
547548
assert set(query_op["command"]["q"].keys()) == {"_id", "is_mammal"}
548549

@@ -564,7 +565,7 @@ class Animal(Document):
564565

565566
async with async_query_counter() as q:
566567
await doc.asave()
567-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.animal"})).to_list())[0]
568+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.animal"})).to_list())[0]
568569
assert query_op["op"] == "command"
569570
assert query_op["command"]["findAndModify"] == "animal"
570571
assert set(query_op["command"]["query"].keys()) == {"_id", "is_mammal"}
@@ -1894,23 +1895,23 @@ class AggPerson(Document):
18941895

18951896
async with async_db_ops_tracker() as q:
18961897
_ = await AggPerson.aobjects.comment(comment).update_one(name="something")
1897-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1898+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
18981899
CMD_QUERY_KEY = "command"
18991900
assert "hint" not in query_op[CMD_QUERY_KEY]
19001901
assert query_op[CMD_QUERY_KEY]["comment"] == comment
19011902
assert "collation" not in query_op[CMD_QUERY_KEY]
19021903

19031904
async with async_db_ops_tracker() as q:
19041905
_ = await AggPerson.aobjects.hint(index_name).update_one(name="something")
1905-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1906+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
19061907
CMD_QUERY_KEY = "command"
19071908
assert query_op[CMD_QUERY_KEY]["hint"] == {"$hint": index_name}
19081909
assert "comment" not in query_op[CMD_QUERY_KEY]
19091910
assert "collation" not in query_op[CMD_QUERY_KEY]
19101911

19111912
async with async_db_ops_tracker() as q:
19121913
_ = await AggPerson.aobjects.collation(base).update_one(name="something")
1913-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1914+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
19141915
CMD_QUERY_KEY = "command"
19151916
assert "hint" not in query_op[CMD_QUERY_KEY]
19161917
assert "comment" not in query_op[CMD_QUERY_KEY]
@@ -1943,23 +1944,23 @@ class AggPerson(Document):
19431944

19441945
async with async_db_ops_tracker() as q:
19451946
_ = await AggPerson.aobjects().comment(comment).delete()
1946-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1947+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
19471948
CMD_QUERY_KEY = "command"
19481949
assert "hint" not in query_op[CMD_QUERY_KEY]
19491950
assert query_op[CMD_QUERY_KEY]["comment"] == comment
19501951
assert "collation" not in query_op[CMD_QUERY_KEY]
19511952

19521953
async with async_db_ops_tracker() as q:
19531954
_ = await AggPerson.aobjects.hint(index_name).delete()
1954-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1955+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
19551956
CMD_QUERY_KEY = "command"
19561957
assert query_op[CMD_QUERY_KEY]["hint"] == {"$hint": index_name}
19571958
assert "comment" not in query_op[CMD_QUERY_KEY]
19581959
assert "collation" not in query_op[CMD_QUERY_KEY]
19591960

19601961
async with async_db_ops_tracker() as q:
19611962
_ = await AggPerson.aobjects.collation(base).delete()
1962-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
1963+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
19631964
CMD_QUERY_KEY = "command"
19641965
assert "hint" not in query_op[CMD_QUERY_KEY]
19651966
assert "comment" not in query_op[CMD_QUERY_KEY]
@@ -2867,9 +2868,9 @@ async def test_db_alias_tests(self):
28672868
"""DB Alias tests."""
28682869
# mongoenginetest - Is default connection alias from setUp()
28692870
# Register Aliases
2870-
await async_register_connection("testdb-1", "mongoenginetest2")
2871-
await async_register_connection("testdb-2", "mongoenginetest3")
2872-
await async_register_connection("testdb-3", "mongoenginetest4")
2871+
await async_register_connection("testdb-1", f"{MONGO_TEST_DB}_2")
2872+
await async_register_connection("testdb-2", f"{MONGO_TEST_DB}_3")
2873+
await async_register_connection("testdb-3", f"{MONGO_TEST_DB}_4")
28732874

28742875
class User(Document):
28752876
name = StringField()
@@ -2931,7 +2932,7 @@ class AuthorBooks(Document):
29312932
async def test_db_alias_overrides(self):
29322933
"""Test db_alias can be overriden."""
29332934
# Register a connection with db_alias testdb-2
2934-
await async_register_connection("testdb-2", "mongoenginetest2")
2935+
await async_register_connection("testdb-2", f"{MONGO_TEST_DB}_2")
29352936

29362937
class A(Document):
29372938
"""Uses default db_alias"""
@@ -2947,13 +2948,13 @@ class B(A):
29472948
A.aobjects.all()
29482949

29492950
assert "testdb-2" == B._meta.get("db_alias")
2950-
assert "mongoenginetest" == (await A._aget_collection()).database.name
2951-
assert "mongoenginetest2" == (await B._aget_collection()).database.name
2951+
assert MONGO_TEST_DB == (await A._aget_collection()).database.name
2952+
assert f"{MONGO_TEST_DB}_2" == (await B._aget_collection()).database.name
29522953
await async_disconnect("testdb-2")
29532954

29542955
async def test_db_alias_propagates(self):
29552956
"""db_alias propagates?"""
2956-
await async_register_connection("testdb-1", "mongoenginetest2")
2957+
await async_register_connection("testdb-1", f"{MONGO_TEST_DB}_2")
29572958

29582959
class A(Document):
29592960
name = StringField()
@@ -3049,7 +3050,7 @@ def __str__(self):
30493050
assert [str(b) async for b in custom_qs] == ["1", "2"]
30503051

30513052
async def test_switch_db_instance(self):
3052-
await async_register_connection("testdb-1", "mongoenginetest2")
3053+
await async_register_connection("testdb-1", f"{MONGO_TEST_DB}_2")
30533054

30543055
class Group(Document):
30553056
name = StringField()
@@ -3098,8 +3099,8 @@ class Group(Document):
30983099
assert "hello - default" == group.name
30993100

31003101
async def test_switch_db_multiple_documents_same_context(self):
3101-
await async_register_connection("testdb-1", "mongoenginetest2")
3102-
await async_register_connection("testdb-2", "mongoenginetest3")
3102+
await async_register_connection("testdb-1", f"{MONGO_TEST_DB}_2")
3103+
await async_register_connection("testdb-2", f"{MONGO_TEST_DB}_3")
31033104

31043105
class Group(Document):
31053106
name = StringField()
@@ -3155,7 +3156,7 @@ class Post(Document):
31553156
assert p2.title == "post-testdb-2"
31563157

31573158
async def test_switch_db_and_switch_collection_instance(self):
3158-
await async_register_connection("testdb-1", "mongoenginetest2")
3159+
await async_register_connection("testdb-1", f"{MONGO_TEST_DB}_2")
31593160

31603161
class Group(Document):
31613162
name = StringField()
@@ -3218,8 +3219,8 @@ class Group(Document):
32183219
assert "hello - default" == g0.name
32193220

32203221
async def test_switch_multiple_db_and_multiple_collection_same_time(self):
3221-
await async_register_connection("tenantA", "mongoenginetest2")
3222-
await async_register_connection("tenantB", "mongoenginetest2")
3222+
await async_register_connection("tenantA", f"{MONGO_TEST_DB}_2")
3223+
await async_register_connection("tenantB", f"{MONGO_TEST_DB}_2")
32233224

32243225
class User(Document):
32253226
name = StringField()

tests/asynchronous/document/test_timeseries_collection.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import asyncio
22
import unittest
33
from datetime import datetime, timedelta
4+
from tests.utils import MONGO_TEST_DB
45

56
try:
67
# Python 3.11+
@@ -23,7 +24,7 @@
2324

2425
class TestTimeSeriesCollections(unittest.IsolatedAsyncioTestCase):
2526
async def asyncSetUp(self):
26-
await async_connect(db="mongoenginetest")
27+
await async_connect(db=MONGO_TEST_DB)
2728
self.db = await async_get_db()
2829

2930
class SensorData(Document):

tests/asynchronous/fields/test_datetime_field.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from mongoengine import *
77
from mongoengine.asynchronous import async_connect, connection
88
from tests.asynchronous.utils import MongoDBAsyncTestCase, async_get_as_pymongo
9+
from tests.utils import MONGO_TEST_DB
910

1011
try:
1112
import dateutil
@@ -234,7 +235,7 @@ async def test_datetime_tz_aware_mark_as_changed(self):
234235
connection._connections = {}
235236
connection._dbs = {}
236237

237-
await async_connect(db="mongoenginetest", tz_aware=True)
238+
await async_connect(db=MONGO_TEST_DB, tz_aware=True)
238239

239240
class LogEntry(Document):
240241
time = DateTimeField()

tests/asynchronous/queryset/test_field_list.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
from mongoengine.asynchronous import async_connect, async_disconnect
77
from mongoengine.registry import _CollectionRegistry
88
from tests.asynchronous.utils import reset_async_connections
9+
from tests.utils import MONGO_TEST_DB
910

1011

1112
class TestOnlyExcludeAll(unittest.IsolatedAsyncioTestCase):
1213
async def asyncSetUp(self):
13-
await async_connect(db="mongoenginetest")
14+
await async_connect(db=MONGO_TEST_DB)
1415

1516
class Person(Document):
1617
name = StringField()

tests/asynchronous/queryset/test_modify.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from mongoengine.asynchronous import async_connect, async_disconnect
1010
from mongoengine.registry import _CollectionRegistry
1111
from tests.asynchronous.utils import reset_async_connections
12-
12+
from tests.utils import MONGO_TEST_DB
1313

1414
class Doc(Document):
1515
id = IntField(primary_key=True)
@@ -18,7 +18,7 @@ class Doc(Document):
1818

1919
class TestOnlyExcludeAll(unittest.IsolatedAsyncioTestCase):
2020
async def asyncSetUp(self):
21-
await async_connect(db="mongoenginetest")
21+
await async_connect(db=MONGO_TEST_DB)
2222
await Doc.adrop_collection()
2323

2424
async def asyncTearDown(self):

tests/asynchronous/queryset/test_queryset.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
async_get_as_pymongo,
2929
reset_async_connections,
3030
)
31+
from tests.utils import MONGO_TEST_DB
3132

3233

3334
def get_key_compat(mongo_ver):
@@ -38,8 +39,8 @@ def get_key_compat(mongo_ver):
3839

3940
class TestQueryset(unittest.IsolatedAsyncioTestCase):
4041
async def asyncSetUp(self):
41-
await async_connect(db="mongoenginetest")
42-
await async_connect(db="mongoenginetest2", alias="test2")
42+
await async_connect(db=MONGO_TEST_DB)
43+
await async_connect(db=f"{MONGO_TEST_DB}_2", alias="test2")
4344

4445
class PersonMeta(EmbeddedDocument):
4546
weight = IntField()
@@ -3515,7 +3516,7 @@ class News(Document):
35153516
assert await qs1.to_list() == await qs2.to_list()
35163517

35173518
async def test_distinct_handles_references_to_alias(self):
3518-
await async_register_connection("testdb", "mongoenginetest2")
3519+
await async_register_connection("testdb", f"{MONGO_TEST_DB}_2")
35193520

35203521
class Bar(Document):
35213522
text = StringField()

tests/asynchronous/queryset/test_queryset_aggregation.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
async_get_mongodb_version
77
)
88
from tests.asynchronous.utils import async_db_ops_tracker, MongoDBAsyncTestCase
9+
from tests.utils import MONGO_TEST_DB
910

1011

1112
class TestQuerysetAggregate(MongoDBAsyncTestCase):
@@ -107,23 +108,23 @@ class AggPerson(Document):
107108

108109
async with async_db_ops_tracker() as q:
109110
_ = await (await AggPerson.aobjects.comment(comment).aggregate(pipeline)).to_list()
110-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
111+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
111112
CMD_QUERY_KEY = "command"
112113
assert "hint" not in query_op[CMD_QUERY_KEY]
113114
assert query_op[CMD_QUERY_KEY]["comment"] == comment
114115
assert "collation" not in query_op[CMD_QUERY_KEY]
115116

116117
async with async_db_ops_tracker() as q:
117118
_ = await (await AggPerson.aobjects.hint(index_name).aggregate(pipeline)).to_list()
118-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
119+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
119120
CMD_QUERY_KEY = "command"
120121
assert query_op[CMD_QUERY_KEY]["hint"] == "name_1"
121122
assert "comment" not in query_op[CMD_QUERY_KEY]
122123
assert "collation" not in query_op[CMD_QUERY_KEY]
123124

124125
async with async_db_ops_tracker() as q:
125126
_ = await (await AggPerson.aobjects.collation(base).aggregate(pipeline)).to_list()
126-
query_op = (await ((await q.db).system.profile.find({"ns": "mongoenginetest.agg_person"})).to_list())[0]
127+
query_op = (await ((await q.db).system.profile.find({"ns": f"{MONGO_TEST_DB}.agg_person"})).to_list())[0]
127128
CMD_QUERY_KEY = "command"
128129
assert "hint" not in query_op[CMD_QUERY_KEY]
129130
assert "comment" not in query_op[CMD_QUERY_KEY]

0 commit comments

Comments
 (0)