Skip to content

Commit 5982f6b

Browse files
committed
Add tests for DatabaseWrapper.get_connection_params()
1 parent 7e5b229 commit 5982f6b

File tree

1 file changed

+43
-1
lines changed

1 file changed

+43
-1
lines changed

tests/backend_/test_base.py

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,56 @@
66
from django_mongodb_backend.base import DatabaseWrapper
77

88

9-
class DatabaseWrapperTests(SimpleTestCase):
9+
class GetConnectionParamsTests(SimpleTestCase):
1010
def test_database_name_empty(self):
1111
settings = connection.settings_dict.copy()
1212
settings["NAME"] = ""
1313
msg = 'settings.DATABASES is missing the "NAME" value.'
1414
with self.assertRaisesMessage(ImproperlyConfigured, msg):
1515
DatabaseWrapper(settings).get_connection_params()
1616

17+
def test_host(self):
18+
settings = connection.settings_dict.copy()
19+
settings["HOST"] = "host"
20+
params = DatabaseWrapper(settings).get_connection_params()
21+
self.assertEqual(params["host"], "host")
22+
23+
def test_host_empty(self):
24+
settings = connection.settings_dict.copy()
25+
settings["HOST"] = ""
26+
params = DatabaseWrapper(settings).get_connection_params()
27+
self.assertIsNone(params["host"])
28+
29+
def test_user(self):
30+
settings = connection.settings_dict.copy()
31+
settings["USER"] = "user"
32+
params = DatabaseWrapper(settings).get_connection_params()
33+
self.assertEqual(params["username"], "user")
34+
35+
def test_password(self):
36+
settings = connection.settings_dict.copy()
37+
settings["PASSWORD"] = "password" # noqa: S105
38+
params = DatabaseWrapper(settings).get_connection_params()
39+
self.assertEqual(params["password"], "password")
40+
41+
def test_port(self):
42+
settings = connection.settings_dict.copy()
43+
settings["PORT"] = 123
44+
params = DatabaseWrapper(settings).get_connection_params()
45+
self.assertEqual(params["port"], 123)
46+
47+
def test_port_as_string(self):
48+
settings = connection.settings_dict.copy()
49+
settings["PORT"] = "123"
50+
params = DatabaseWrapper(settings).get_connection_params()
51+
self.assertEqual(params["port"], 123)
52+
53+
def test_options(self):
54+
settings = connection.settings_dict.copy()
55+
settings["OPTIONS"] = {"extra": "option"}
56+
params = DatabaseWrapper(settings).get_connection_params()
57+
self.assertEqual(params["extra"], "option")
58+
1759

1860
class DatabaseWrapperConnectionTests(TestCase):
1961
def test_set_autocommit(self):

0 commit comments

Comments
 (0)