Skip to content

Commit 0e48ce5

Browse files
committed
Move to test_dns
1 parent ae5065d commit 0e48ce5

File tree

1 file changed

+1
-86
lines changed

1 file changed

+1
-86
lines changed

test/test_uri_parser.py

Lines changed: 1 addition & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
sys.path[0:0] = [""]
2525

2626
from test import unittest
27-
from unittest.mock import MagicMock, patch
27+
from unittest.mock import patch
2828

2929
from bson.binary import JAVA_LEGACY
3030
from pymongo import ReadPreference
@@ -37,26 +37,6 @@
3737
)
3838

3939

40-
def run_initial_dns_seedlist_discovery_prose_tests(self, test_cases):
41-
for case in test_cases:
42-
with patch("dns.resolver.resolve") as mock_resolver:
43-
44-
def mock_resolve(query, record_type, *args, **kwargs):
45-
mock_srv = MagicMock()
46-
mock_srv.target.to_text.return_value = case["mock_target"]
47-
return [mock_srv]
48-
49-
mock_resolver.side_effect = mock_resolve
50-
domain = case["query"].split("._tcp.")[1]
51-
connection_string = f"mongodb+srv://{domain}"
52-
try:
53-
parse_uri(connection_string)
54-
except ConfigurationError as e:
55-
self.assertIn(case["expected_error"], str(e))
56-
else:
57-
self.fail(f"ConfigurationError was not raised for query: {case['query']}")
58-
59-
6040
class TestURI(unittest.TestCase):
6141
def test_validate_userinfo(self):
6242
self.assertRaises(InvalidURI, parse_userinfo, "foo@")
@@ -574,71 +554,6 @@ def test_port_with_whitespace(self):
574554
with self.assertRaisesRegex(ValueError, r"Port contains whitespace character: '\\n'"):
575555
parse_uri("mongodb://localhost:27\n017")
576556

577-
# Initial DNS Seedlist Discovery prose tests
578-
# https://github.com/mongodb/specifications/blob/0a7a8b5/source/initial-dns-seedlist-discovery/tests/README.md#prose-tests
579-
580-
def test_1_allow_srv_hosts_with_fewer_than_three_dot_separated_parts(self):
581-
with patch("dns.resolver.resolve"):
582-
parse_uri("mongodb+srv://localhost/")
583-
parse_uri("mongodb+srv://mongo.local/")
584-
585-
def test_2_throw_when_return_address_does_not_end_with_srv_domain(self):
586-
test_cases = [
587-
{
588-
"query": "_mongodb._tcp.localhost",
589-
"mock_target": "localhost.mongodb",
590-
"expected_error": "Invalid SRV host",
591-
},
592-
{
593-
"query": "_mongodb._tcp.blogs.mongodb.com",
594-
"mock_target": "blogs.evil.com",
595-
"expected_error": "Invalid SRV host",
596-
},
597-
{
598-
"query": "_mongodb._tcp.blogs.mongo.local",
599-
"mock_target": "test_1.evil.com",
600-
"expected_error": "Invalid SRV host",
601-
},
602-
]
603-
run_initial_dns_seedlist_discovery_prose_tests(self, test_cases)
604-
605-
def test_3_throw_when_return_address_is_identical_to_srv_hostname(self):
606-
test_cases = [
607-
{
608-
"query": "_mongodb._tcp.localhost",
609-
"mock_target": "localhost",
610-
"expected_error": "Invalid SRV host",
611-
},
612-
{
613-
"query": "_mongodb._tcp.mongo.local",
614-
"mock_target": "mongo.local",
615-
"expected_error": "Invalid SRV host",
616-
},
617-
]
618-
run_initial_dns_seedlist_discovery_prose_tests(self, test_cases)
619-
620-
def test_4_throw_when_return_address_does_not_contain_dot_separating_shared_part_of_domain(
621-
self
622-
):
623-
test_cases = [
624-
{
625-
"query": "_mongodb._tcp.localhost",
626-
"mock_target": "test_1.cluster_1localhost",
627-
"expected_error": "Invalid SRV host",
628-
},
629-
{
630-
"query": "_mongodb._tcp.mongo.local",
631-
"mock_target": "test_1.my_hostmongo.local",
632-
"expected_error": "Invalid SRV host",
633-
},
634-
{
635-
"query": "_mongodb._tcp.blogs.mongodb.com",
636-
"mock_target": "cluster.testmongodb.com",
637-
"expected_error": "Invalid SRV host",
638-
},
639-
]
640-
run_initial_dns_seedlist_discovery_prose_tests(self, test_cases)
641-
642557

643558
if __name__ == "__main__":
644559
unittest.main()

0 commit comments

Comments
 (0)