Skip to content

Commit 36beee3

Browse files
authored
Merge pull request apache#822 from datastax/python-814-tests
Added tests for PYTHON-814
2 parents a90ce12 + e71f4b4 commit 36beee3

1 file changed

Lines changed: 36 additions & 13 deletions

File tree

tests/integration/cqlengine/connections/test_connection.py

Lines changed: 36 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,29 +21,62 @@
2121
from cassandra.cqlengine.models import Model
2222
from cassandra.cqlengine import columns, connection
2323
from cassandra.cqlengine.management import sync_table
24-
from cassandra.cluster import Cluster
24+
from cassandra.cluster import Cluster, _clusters_for_shutdown
2525
from cassandra.query import dict_factory
2626

2727
from tests.integration import PROTOCOL_VERSION, execute_with_long_wait_retry, local
2828
from tests.integration.cqlengine.base import BaseCassEngTestCase
2929
from tests.integration.cqlengine import DEFAULT_KEYSPACE, setup_connection
3030
from cassandra.cqlengine import models
3131

32+
from mock import patch
33+
3234

3335
class TestConnectModel(Model):
3436

3537
id = columns.Integer(primary_key=True)
3638
keyspace = columns.Text()
3739

3840

39-
class ConnectionTest(BaseCassEngTestCase):
41+
class ConnectionTest(unittest.TestCase):
42+
def tearDown(self):
43+
connection.unregister_connection("default")
44+
45+
@local
46+
def test_connection_setup_with_setup(self):
47+
connection.setup(hosts=None, default_keyspace=None)
48+
self.assertIsNotNone(connection.get_connection("default").cluster.metadata.get_host("127.0.0.1"))
49+
50+
@local
51+
def test_connection_setup_with_default(self):
52+
connection.default()
53+
self.assertIsNotNone(connection.get_connection("default").cluster.metadata.get_host("127.0.0.1"))
54+
55+
def test_only_one_connection_is_created(self):
56+
"""
57+
Test to ensure that only one new connection is created by
58+
connection.register_connection
59+
60+
@since 3.12
61+
@jira_ticket PYTHON-814
62+
@expected_result Only one connection is created
63+
64+
@test_category object_mapper
65+
"""
66+
number_of_clusters_before = len(_clusters_for_shutdown)
67+
connection.default()
68+
number_of_clusters_after = len(_clusters_for_shutdown)
69+
self.assertEqual(number_of_clusters_after - number_of_clusters_before, 1)
70+
71+
72+
class SeveralConnectionsTest(BaseCassEngTestCase):
4073

4174
@classmethod
4275
def setUpClass(cls):
4376
connection.unregister_connection('default')
4477
cls.keyspace1 = 'ctest1'
4578
cls.keyspace2 = 'ctest2'
46-
super(ConnectionTest, cls).setUpClass()
79+
super(SeveralConnectionsTest, cls).setUpClass()
4780
cls.setup_cluster = Cluster(protocol_version=PROTOCOL_VERSION)
4881
cls.setup_session = cls.setup_cluster.connect()
4982
ddl = "CREATE KEYSPACE {0} WITH replication = {{'class': 'SimpleStrategy', 'replication_factor': '{1}'}}".format(cls.keyspace1, 1)
@@ -94,13 +127,3 @@ def test_connection_session_switch(self):
94127
connection.set_session(self.session2)
95128
self.assertEqual(1, TestConnectModel.objects.count())
96129
self.assertEqual(TestConnectModel.objects.first(), TCM2)
97-
98-
@local
99-
def test_connection_setup_with_setup(self):
100-
connection.setup(hosts=None, default_keyspace=None)
101-
self.assertIsNotNone(connection.get_connection("default").cluster.metadata.get_host("127.0.0.1"))
102-
103-
@local
104-
def test_connection_setup_with_default(self):
105-
connection.default()
106-
self.assertIsNotNone(connection.get_connection("default").cluster.metadata.get_host("127.0.0.1"))

0 commit comments

Comments
 (0)