From ca959de212cae920c69cee19a80d41e82e68a1a2 Mon Sep 17 00:00:00 2001 From: GregBestland Date: Tue, 3 Nov 2015 18:32:43 -0600 Subject: [PATCH] Adding a skip where needed, fixing issue with cross test pollution in cqlengine --- tests/integration/cqlengine/__init__.py | 16 +++++++----- .../integration/cqlengine/query/test_named.py | 26 ++++++++++--------- .../integration/cqlengine/test_consistency.py | 1 - .../standard/test_cython_protocol_handlers.py | 1 + 4 files changed, 24 insertions(+), 20 deletions(-) diff --git a/tests/integration/cqlengine/__init__.py b/tests/integration/cqlengine/__init__.py index cce715d7..e89c4778 100644 --- a/tests/integration/cqlengine/__init__.py +++ b/tests/integration/cqlengine/__init__.py @@ -20,6 +20,7 @@ from cassandra.cqlengine import connection from cassandra.cqlengine.management import create_keyspace_simple, CQLENG_ALLOW_SCHEMA_MANAGEMENT from tests.integration import get_server_versions, use_single_node, PROTOCOL_VERSION +DEFAULT_KEYSPACE = 'cqlengine_test' def setup_package(): @@ -28,16 +29,17 @@ def setup_package(): use_single_node() - keyspace = 'cqlengine_test' - connection.setup(['127.0.0.1'], - consistency=ConsistencyLevel.ONE, - protocol_version=PROTOCOL_VERSION, - default_keyspace=keyspace) - - create_keyspace_simple(keyspace, 1) + setup_connection(DEFAULT_KEYSPACE) + create_keyspace_simple(DEFAULT_KEYSPACE, 1) def is_prepend_reversed(): # do we have https://issues.apache.org/jira/browse/CASSANDRA-8733 ? ver, _ = get_server_versions() return not (ver >= (2, 0, 13) or ver >= (2, 1, 3)) + +def setup_connection(keyspace_name): + connection.setup(['127.0.0.1'], + consistency=ConsistencyLevel.ONE, + protocol_version=PROTOCOL_VERSION, + default_keyspace=keyspace_name) \ No newline at end of file diff --git a/tests/integration/cqlengine/query/test_named.py b/tests/integration/cqlengine/query/test_named.py index 2cc88ec5..60076ad8 100644 --- a/tests/integration/cqlengine/query/test_named.py +++ b/tests/integration/cqlengine/query/test_named.py @@ -24,6 +24,7 @@ from cassandra.cqlengine.query import ResultObject from cassandra.concurrent import execute_concurrent_with_args from cassandra.cqlengine import models +from tests.integration.cqlengine import setup_connection from tests.integration.cqlengine.base import BaseCassEngTestCase from tests.integration.cqlengine.query.test_queryset import BaseQuerySetUsage @@ -128,7 +129,7 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): from tests.integration.cqlengine.query.test_queryset import TestModel - ks,tn = TestModel.column_family_name().split('.') + ks, tn = TestModel.column_family_name().split('.') cls.keyspace = NamedKeyspace(ks) cls.table = cls.keyspace.table(tn) @@ -149,8 +150,8 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): def test_iteration(self): """ Tests that iterating over a query set pulls back all of the expected results """ q = self.table.objects(test_id=0) - #tuple of expected attempt_id, expected_result values - compare_set = set([(0,5), (1,10), (2,15), (3,20)]) + # tuple of expected attempt_id, expected_result values + compare_set = set([(0, 5), (1, 10), (2, 15), (3, 20)]) for t in q: val = t.attempt_id, t.expected_result assert val in compare_set @@ -160,8 +161,8 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): # test with regular filtering q = self.table.objects(attempt_id=3).allow_filtering() assert len(q) == 3 - #tuple of expected test_id, expected_result values - compare_set = set([(0,20), (1,20), (2,75)]) + # tuple of expected test_id, expected_result values + compare_set = set([(0, 20), (1, 20), (2, 75)]) for t in q: val = t.test_id, t.expected_result assert val in compare_set @@ -171,8 +172,8 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): # test with query method q = self.table.objects(self.table.column('attempt_id') == 3).allow_filtering() assert len(q) == 3 - #tuple of expected test_id, expected_result values - compare_set = set([(0,20), (1,20), (2,75)]) + # tuple of expected test_id, expected_result values + compare_set = set([(0, 20), (1, 20), (2, 75)]) for t in q: val = t.test_id, t.expected_result assert val in compare_set @@ -183,16 +184,16 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): """ Tests that iterating over a query set more than once works """ # test with both the filtering method and the query method for q in (self.table.objects(test_id=0), self.table.objects(self.table.column('test_id') == 0)): - #tuple of expected attempt_id, expected_result values - compare_set = set([(0,5), (1,10), (2,15), (3,20)]) + # tuple of expected attempt_id, expected_result values + compare_set = set([(0, 5), (1, 10), (2, 15), (3, 20)]) for t in q: val = t.attempt_id, t.expected_result assert val in compare_set compare_set.remove(val) assert len(compare_set) == 0 - #try it again - compare_set = set([(0,5), (1,10), (2,15), (3,20)]) + # try it again + compare_set = set([(0, 5), (1, 10), (2, 15), (3, 20)]) for t in q: val = t.attempt_id, t.expected_result assert val in compare_set @@ -205,7 +206,7 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage): """ for q in (self.table.objects(test_id=0), self.table.objects(self.table.column('test_id') == 0)): q = q.order_by('attempt_id') - expected_order = [0,1,2,3] + expected_order = [0, 1, 2, 3] iter1 = iter(q) iter2 = iter(q) for attempt_id in expected_order: @@ -280,6 +281,7 @@ class TestNamedWithMV(BasicSharedKeyspaceUnitTestCase): def tearDown(self): models.DEFAULT_KEYSPACE = self.default_keyspace + setup_connection(models.DEFAULT_KEYSPACE) def test_named_table_with_mv(self): """ diff --git a/tests/integration/cqlengine/test_consistency.py b/tests/integration/cqlengine/test_consistency.py index 174f6207..47e16619 100644 --- a/tests/integration/cqlengine/test_consistency.py +++ b/tests/integration/cqlengine/test_consistency.py @@ -97,7 +97,6 @@ class TestConsistency(BaseConsistencyTest): args = m.call_args self.assertEqual(CL.ALL, args[0][0].consistency_level) - def test_delete(self): # ensures we always carry consistency through on delete statements t = TestConsistencyModel.create(text="bacon and eggs") diff --git a/tests/integration/standard/test_cython_protocol_handlers.py b/tests/integration/standard/test_cython_protocol_handlers.py index f4e0a5a6..a61a1fc2 100644 --- a/tests/integration/standard/test_cython_protocol_handlers.py +++ b/tests/integration/standard/test_cython_protocol_handlers.py @@ -88,6 +88,7 @@ class CythonProtocolHandlerTest(unittest.TestCase): self.assertFalse(result.has_more_pages) self._verify_numpy_page(result[0]) + @notprotocolv1 @numpytest def test_numpy_results_paged(self): """