|
19 | 19 | import sys
|
20 | 20 | import unittest
|
21 | 21 | from collections import defaultdict
|
| 22 | +from test import PyMongoTestCase |
22 | 23 |
|
23 | 24 | import pytest
|
24 | 25 |
|
|
46 | 47 | }
|
47 | 48 |
|
48 | 49 |
|
49 |
| -def connect(uri): |
50 |
| - if not uri: |
51 |
| - raise Exception("Must set env variable to test.") |
52 |
| - client = pymongo.MongoClient(uri) |
53 |
| - # No TLS error |
54 |
| - client.admin.command("ping") |
55 |
| - # No auth error |
56 |
| - client.test.test.count_documents({}) |
| 50 | +class TestAtlasConnect(PyMongoTestCase): |
| 51 | + def connect(self, uri): |
| 52 | + if not uri: |
| 53 | + raise Exception("Must set env variable to test.") |
| 54 | + client = self.simple_client(uri) |
| 55 | + # No TLS error |
| 56 | + client.admin.command("ping") |
| 57 | + # No auth error |
| 58 | + client.test.test.count_documents({}) |
57 | 59 |
|
58 |
| - |
59 |
| -class TestAtlasConnect(unittest.TestCase): |
60 | 60 | @unittest.skipUnless(HAS_SNI, "Free tier requires SNI support")
|
61 | 61 | def test_free_tier(self):
|
62 |
| - connect(URIS["ATLAS_FREE"]) |
| 62 | + self.connect(URIS["ATLAS_FREE"]) |
63 | 63 |
|
64 | 64 | def test_replica_set(self):
|
65 |
| - connect(URIS["ATLAS_REPL"]) |
| 65 | + self.connect(URIS["ATLAS_REPL"]) |
66 | 66 |
|
67 | 67 | def test_sharded_cluster(self):
|
68 |
| - connect(URIS["ATLAS_SHRD"]) |
| 68 | + self.connect(URIS["ATLAS_SHRD"]) |
69 | 69 |
|
70 | 70 | def test_tls_11(self):
|
71 |
| - connect(URIS["ATLAS_TLS11"]) |
| 71 | + self.connect(URIS["ATLAS_TLS11"]) |
72 | 72 |
|
73 | 73 | def test_tls_12(self):
|
74 |
| - connect(URIS["ATLAS_TLS12"]) |
| 74 | + self.connect(URIS["ATLAS_TLS12"]) |
75 | 75 |
|
76 | 76 | def test_serverless(self):
|
77 |
| - connect(URIS["ATLAS_SERVERLESS"]) |
| 77 | + self.connect(URIS["ATLAS_SERVERLESS"]) |
78 | 78 |
|
79 | 79 | def connect_srv(self, uri):
|
80 |
| - connect(uri) |
| 80 | + self.connect(uri) |
81 | 81 | self.assertIn("mongodb+srv://", uri)
|
82 | 82 |
|
83 | 83 | @unittest.skipUnless(HAS_SNI, "Free tier requires SNI support")
|
|
0 commit comments