|
4 | 4 |
|
5 | 5 | import django_mongodb
|
6 | 6 |
|
7 |
| -MONGODB_URI = "mongodb+srv://myDatabaseUser:D1fficultP%[email protected]/myDatabase?retryWrites=true&w=majority" |
| 7 | +URI = "mongodb+srv://myDatabaseUser:D1fficultP%[email protected]/myDatabase?retryWrites=true&w=majority" |
8 | 8 |
|
9 | 9 |
|
10 | 10 | class MongoParseURITests(SimpleTestCase):
|
11 | 11 | """
|
12 | 12 | Test django_mongodb.parse(uri) function
|
13 | 13 | """
|
14 | 14 |
|
| 15 | + def setUp(self): |
| 16 | + self.srv_record = MagicMock() |
| 17 | + self.srv_record.target.to_text.return_value = "cluster0.example.mongodb.net" |
| 18 | + self.patcher = patch("dns.resolver.resolve", return_value=[self.srv_record]) |
| 19 | + self.mock_resolver = self.patcher.start() |
| 20 | + self.addCleanup(self.patcher.stop) |
| 21 | + |
15 | 22 | @patch("dns.resolver.resolve")
|
16 | 23 | def test_parse(self, mock_resolver):
|
17 |
| - srv_record = MagicMock() |
18 |
| - srv_record.target.to_text.return_value = "cluster0.example.mongodb.net" |
19 |
| - mock_resolver.return_value = [srv_record] |
20 |
| - settings_dict = django_mongodb.parse(MONGODB_URI) |
| 24 | + settings_dict = django_mongodb.parse(URI) |
21 | 25 | self.assertEqual(settings_dict["ENGINE"], "django_mongodb")
|
22 | 26 | self.assertEqual(settings_dict["NAME"], "myDatabase")
|
23 | 27 | self.assertEqual(settings_dict["HOST"], "mongodb+srv://cluster0.example.mongodb.net")
|
24 | 28 | self.assertEqual(settings_dict["USER"], "myDatabaseUser")
|
25 | 29 | self.assertEqual(settings_dict["PASSWORD"], "D1fficultP@ssw0rd")
|
26 | 30 | self.assertEqual(settings_dict["PORT"], None)
|
| 31 | + |
| 32 | + @patch("dns.resolver.resolve") |
| 33 | + def test_engine_kwarg(self, mock_resolver): |
| 34 | + settings_dict = django_mongodb.parse(URI, engine="some_other_engine") |
| 35 | + self.assertEqual(settings_dict["ENGINE"], "some_other_engine") |
0 commit comments