Skip to content

Commit eff8f8b

Browse files
committed
Update test
1 parent ea923dc commit eff8f8b

File tree

2 files changed

+9
-12
lines changed

2 files changed

+9
-12
lines changed

django_mongodb_backend/utils.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
from django.utils.functional import SimpleLazyObject
99
from django.utils.text import format_lazy
1010
from django.utils.version import get_version_tuple
11+
from pymongo.encryption_options import AutoEncryptionOpts
1112
from pymongo.uri_parser import parse_uri as pymongo_parse_uri
1213

1314

@@ -33,11 +34,11 @@ def get_auto_encryption_options(crypt_shared_lib_path=None):
3334
key_vault_collection_name = "__keyVault"
3435
key_vault_namespace = f"{key_vault_database_name}.{key_vault_collection_name}"
3536
kms_providers = {}
36-
return {
37-
"kms_providers": kms_providers,
38-
"key_vault_namespace": key_vault_namespace,
39-
"crypt_shared_lib_path": crypt_shared_lib_path,
40-
}
37+
return AutoEncryptionOpts(
38+
key_vault_namespace=key_vault_namespace,
39+
kms_providers=kms_providers,
40+
crypt_shared_lib_path=crypt_shared_lib_path,
41+
)
4142

4243

4344
def parse_uri(uri, *, auto_encryption_options=None, db_name=None, test=None):
@@ -62,7 +63,7 @@ def parse_uri(uri, *, auto_encryption_options=None, db_name=None, test=None):
6263
raise ImproperlyConfigured("You must provide the db_name parameter.")
6364
options = uri.get("options")
6465
if auto_encryption_options:
65-
options = {**uri.get("options"), **auto_encryption_options}
66+
options = {**uri.get("options"), "auto_encryption_options": auto_encryption_options}
6667
settings_dict = {
6768
"ENGINE": "django_mongodb_backend",
6869
"NAME": db_name,

tests/backend_/utils/test_parse_uri.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,9 +100,5 @@ def test_no_scheme(self):
100100
class ParseUriOptionsTests(TestCase):
101101
@skipUnlessDBFeature("supports_queryable_encryption")
102102
def test_auto_encryption_options(self):
103-
auto_encryption_options = get_auto_encryption_options()
104-
settings_dict = parse_uri(
105-
"mongodb://cluster0.example.mongodb.net/myDatabase",
106-
auto_encryption_options=auto_encryption_options,
107-
)
108-
self.assertEqual(settings_dict["OPTIONS"]["key_vault_namespace"], "encryption.__keyVault")
103+
auto_encryption_options = get_auto_encryption_options(crypt_shared_lib_path="/path/to/lib")
104+
parse_uri("mongodb://localhost/db", auto_encryption_options=auto_encryption_options)

0 commit comments

Comments
 (0)