Start fixing integration tests for python 3
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import sys
|
||||
|
||||
from itertools import count, cycle
|
||||
from six.moves import xrange
|
||||
from threading import Event
|
||||
|
||||
|
||||
@@ -79,7 +80,7 @@ def execute_concurrent_with_args(session, statement, parameters, *args, **kwargs
|
||||
parameters = [(x,) for x in range(1000)]
|
||||
execute_concurrent_with_args(session, statement, parameters)
|
||||
"""
|
||||
return execute_concurrent(session, zip(cycle((statement,)), parameters), *args, **kwargs)
|
||||
return execute_concurrent(session, list(zip(cycle((statement,)), parameters)), *args, **kwargs)
|
||||
|
||||
|
||||
_sentinel = object()
|
||||
@@ -92,12 +93,12 @@ def _handle_error(error, result_index, event, session, statements, results, num_
|
||||
return
|
||||
else:
|
||||
results[result_index] = (False, error)
|
||||
if num_finished.next() >= to_execute:
|
||||
if next(num_finished) >= to_execute:
|
||||
event.set()
|
||||
return
|
||||
|
||||
try:
|
||||
(next_index, (statement, params)) = statements.next()
|
||||
(next_index, (statement, params)) = next(statements)
|
||||
except StopIteration:
|
||||
return
|
||||
|
||||
@@ -113,7 +114,7 @@ def _handle_error(error, result_index, event, session, statements, results, num_
|
||||
return
|
||||
else:
|
||||
results[next_index] = (False, exc)
|
||||
if num_finished.next() >= to_execute:
|
||||
if next(num_finished) >= to_execute:
|
||||
event.set()
|
||||
return
|
||||
|
||||
@@ -121,13 +122,13 @@ def _handle_error(error, result_index, event, session, statements, results, num_
|
||||
def _execute_next(result, result_index, event, session, statements, results, num_finished, to_execute, first_error):
|
||||
if result is not _sentinel:
|
||||
results[result_index] = (True, result)
|
||||
finished = num_finished.next()
|
||||
finished = next(num_finished)
|
||||
if finished >= to_execute:
|
||||
event.set()
|
||||
return
|
||||
|
||||
try:
|
||||
(next_index, (statement, params)) = statements.next()
|
||||
(next_index, (statement, params)) = next(statements)
|
||||
except StopIteration:
|
||||
return
|
||||
|
||||
@@ -143,6 +144,6 @@ def _execute_next(result, result_index, event, session, statements, results, num
|
||||
return
|
||||
else:
|
||||
results[next_index] = (False, exc)
|
||||
if num_finished.next() >= to_execute:
|
||||
if next(num_finished) >= to_execute:
|
||||
event.set()
|
||||
return
|
||||
|
@@ -57,7 +57,7 @@ def trim_if_startswith(s, prefix):
|
||||
|
||||
|
||||
def unix_time_from_uuid1(u):
|
||||
return (u.get_time() - 0x01B21DD213814000) / 10000000.0
|
||||
return (u.time - 0x01B21DD213814000) / 10000000.0
|
||||
|
||||
_casstypes = {}
|
||||
|
||||
@@ -318,7 +318,7 @@ if six.PY3:
|
||||
(_UnrecognizedType,),
|
||||
{'typename': "'%s'" % casstypename})
|
||||
else:
|
||||
def mkUnrecognizedType(casstypename):
|
||||
def mkUnrecognizedType(casstypename): # noqa
|
||||
return CassandraTypeType(casstypename.encode('utf8'),
|
||||
(_UnrecognizedType,),
|
||||
{'typename': "'%s'" % casstypename})
|
||||
|
@@ -5,7 +5,9 @@ except ImportError:
|
||||
|
||||
import logging
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
import os
|
||||
from six import print_
|
||||
from threading import Event
|
||||
|
||||
from cassandra.cluster import Cluster
|
||||
@@ -74,7 +76,7 @@ def get_node(node_id):
|
||||
|
||||
|
||||
def setup_package():
|
||||
print 'Using Cassandra version: %s' % CASSANDRA_VERSION
|
||||
print_('Using Cassandra version: %s' % CASSANDRA_VERSION)
|
||||
try:
|
||||
try:
|
||||
cluster = CCMCluster.load(path, CLUSTER_NAME)
|
||||
|
@@ -29,7 +29,7 @@ class ClusterTests(unittest.TestCase):
|
||||
statements = cycle(("INSERT INTO test3rf.test (k, v) VALUES (%s, %s)", ))
|
||||
parameters = [(i, i) for i in range(num_statements)]
|
||||
|
||||
results = execute_concurrent(self.session, zip(statements, parameters))
|
||||
results = execute_concurrent(self.session, list(zip(statements, parameters)))
|
||||
self.assertEqual(num_statements, len(results))
|
||||
self.assertEqual([(True, None)] * num_statements, results)
|
||||
|
||||
@@ -37,7 +37,7 @@ class ClusterTests(unittest.TestCase):
|
||||
statements = cycle(("SELECT v FROM test3rf.test WHERE k=%s", ))
|
||||
parameters = [(i, ) for i in range(num_statements)]
|
||||
|
||||
results = execute_concurrent(self.session, zip(statements, parameters))
|
||||
results = execute_concurrent(self.session, list(zip(statements, parameters)))
|
||||
self.assertEqual(num_statements, len(results))
|
||||
self.assertEqual([(True, [(i,)]) for i in range(num_statements)], results)
|
||||
|
||||
@@ -67,7 +67,7 @@ class ClusterTests(unittest.TestCase):
|
||||
|
||||
self.assertRaises(
|
||||
InvalidRequest,
|
||||
execute_concurrent, self.session, zip(statements, parameters), raise_on_first_error=True)
|
||||
execute_concurrent, self.session, list(zip(statements, parameters)), raise_on_first_error=True)
|
||||
|
||||
def test_first_failure_client_side(self):
|
||||
statements = cycle(("INSERT INTO test3rf.test (k, v) VALUES (%s, %s)", ))
|
||||
@@ -78,7 +78,7 @@ class ClusterTests(unittest.TestCase):
|
||||
|
||||
self.assertRaises(
|
||||
TypeError,
|
||||
execute_concurrent, self.session, zip(statements, parameters), raise_on_first_error=True)
|
||||
execute_concurrent, self.session, list(zip(statements, parameters)), raise_on_first_error=True)
|
||||
|
||||
def test_no_raise_on_first_failure(self):
|
||||
statements = cycle(("INSERT INTO test3rf.test (k, v) VALUES (%s, %s)", ))
|
||||
@@ -87,7 +87,7 @@ class ClusterTests(unittest.TestCase):
|
||||
# we'll get an error back from the server
|
||||
parameters[57] = ('efefef', 'awefawefawef')
|
||||
|
||||
results = execute_concurrent(self.session, zip(statements, parameters), raise_on_first_error=False)
|
||||
results = execute_concurrent(self.session, list(zip(statements, parameters)), raise_on_first_error=False)
|
||||
for i, (success, result) in enumerate(results):
|
||||
if i == 57:
|
||||
self.assertFalse(success)
|
||||
@@ -101,9 +101,9 @@ class ClusterTests(unittest.TestCase):
|
||||
parameters = [(i, i) for i in range(100)]
|
||||
|
||||
# the driver will raise an error when binding the params
|
||||
parameters[57] = i
|
||||
parameters[57] = 1
|
||||
|
||||
results = execute_concurrent(self.session, zip(statements, parameters), raise_on_first_error=False)
|
||||
results = execute_concurrent(self.session, list(zip(statements, parameters)), raise_on_first_error=False)
|
||||
for i, (success, result) in enumerate(results):
|
||||
if i == 57:
|
||||
self.assertFalse(success)
|
||||
|
@@ -10,7 +10,7 @@ from cassandra.query import (PreparedStatement, BoundStatement, ValueSequence,
|
||||
from cassandra.cluster import Cluster
|
||||
from cassandra.policies import HostDistance
|
||||
|
||||
from tests.integration import get_server_versions, PROTOCOL_VERSION
|
||||
from tests.integration import PROTOCOL_VERSION
|
||||
|
||||
|
||||
class QueryTest(unittest.TestCase):
|
||||
@@ -29,7 +29,7 @@ class QueryTest(unittest.TestCase):
|
||||
self.assertIsInstance(bound, BoundStatement)
|
||||
self.assertEqual(2, len(bound.values))
|
||||
session.execute(bound)
|
||||
self.assertEqual(bound.routing_key, '\x00\x00\x00\x01')
|
||||
self.assertEqual(bound.routing_key, b'\x00\x00\x00\x01')
|
||||
|
||||
def test_value_sequence(self):
|
||||
"""
|
||||
@@ -88,7 +88,7 @@ class PreparedStatementTests(unittest.TestCase):
|
||||
|
||||
self.assertIsInstance(prepared, PreparedStatement)
|
||||
bound = prepared.bind((1, None))
|
||||
self.assertEqual(bound.routing_key, '\x00\x00\x00\x01')
|
||||
self.assertEqual(bound.routing_key, b'\x00\x00\x00\x01')
|
||||
|
||||
def test_empty_routing_key_indexes(self):
|
||||
"""
|
||||
@@ -144,7 +144,7 @@ class PreparedStatementTests(unittest.TestCase):
|
||||
|
||||
self.assertIsInstance(prepared, PreparedStatement)
|
||||
bound = prepared.bind((1, 2))
|
||||
self.assertEqual(bound.routing_key, '\x04\x00\x00\x00\x04\x00\x00\x00')
|
||||
self.assertEqual(bound.routing_key, b'\x04\x00\x00\x00\x04\x00\x00\x00')
|
||||
|
||||
def test_bound_keyspace(self):
|
||||
"""
|
||||
|
@@ -9,6 +9,7 @@ except ImportError:
|
||||
import unittest # noqa
|
||||
|
||||
from itertools import cycle, count
|
||||
from six.moves import range
|
||||
from threading import Event
|
||||
|
||||
from cassandra.cluster import Cluster
|
||||
@@ -33,7 +34,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
def test_paging(self):
|
||||
statements_and_params = zip(cycle(["INSERT INTO test3rf.test (k, v) VALUES (%s, 0)"]),
|
||||
[(i, ) for i in range(100)])
|
||||
execute_concurrent(self.session, statements_and_params)
|
||||
execute_concurrent(self.session, list(statements_and_params))
|
||||
|
||||
prepared = self.session.prepare("SELECT * FROM test3rf.test")
|
||||
|
||||
@@ -49,7 +50,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
def test_async_paging(self):
|
||||
statements_and_params = zip(cycle(["INSERT INTO test3rf.test (k, v) VALUES (%s, 0)"]),
|
||||
[(i, ) for i in range(100)])
|
||||
execute_concurrent(self.session, statements_and_params)
|
||||
execute_concurrent(self.session, list(statements_and_params))
|
||||
|
||||
prepared = self.session.prepare("SELECT * FROM test3rf.test")
|
||||
|
||||
@@ -65,7 +66,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
def test_paging_callbacks(self):
|
||||
statements_and_params = zip(cycle(["INSERT INTO test3rf.test (k, v) VALUES (%s, 0)"]),
|
||||
[(i, ) for i in range(100)])
|
||||
execute_concurrent(self.session, statements_and_params)
|
||||
execute_concurrent(self.session, list(statements_and_params))
|
||||
|
||||
prepared = self.session.prepare("SELECT * FROM test3rf.test")
|
||||
|
||||
@@ -78,7 +79,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
|
||||
def handle_page(rows, future, counter):
|
||||
for row in rows:
|
||||
counter.next()
|
||||
next(counter)
|
||||
|
||||
if future.has_more_pages:
|
||||
future.start_fetching_next_page()
|
||||
@@ -91,7 +92,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
|
||||
future.add_callbacks(callback=handle_page, callback_args=(future, counter), errback=handle_error)
|
||||
event.wait()
|
||||
self.assertEquals(counter.next(), 100)
|
||||
self.assertEquals(next(counter), 100)
|
||||
|
||||
# simple statement
|
||||
future = self.session.execute_async(SimpleStatement("SELECT * FROM test3rf.test"))
|
||||
@@ -100,7 +101,7 @@ class QueryPagingTests(unittest.TestCase):
|
||||
|
||||
future.add_callbacks(callback=handle_page, callback_args=(future, counter), errback=handle_error)
|
||||
event.wait()
|
||||
self.assertEquals(counter.next(), 100)
|
||||
self.assertEquals(next(counter), 100)
|
||||
|
||||
# prepared statement
|
||||
future = self.session.execute_async(prepared)
|
||||
@@ -109,4 +110,4 @@ class QueryPagingTests(unittest.TestCase):
|
||||
|
||||
future.add_callbacks(callback=handle_page, callback_args=(future, counter), errback=handle_error)
|
||||
event.wait()
|
||||
self.assertEquals(counter.next(), 100)
|
||||
self.assertEquals(next(counter), 100)
|
||||
|
@@ -3,6 +3,7 @@ try:
|
||||
except ImportError:
|
||||
import unittest # noqa
|
||||
|
||||
import binascii
|
||||
from decimal import Decimal
|
||||
from datetime import datetime
|
||||
from uuid import uuid1, uuid4
|
||||
@@ -44,8 +45,8 @@ class TypeTests(unittest.TestCase):
|
||||
""")
|
||||
|
||||
params = [
|
||||
'key1',
|
||||
'blobyblob'.encode('hex')
|
||||
b'key1',
|
||||
binascii.hexlify(b'blobyblob')
|
||||
]
|
||||
|
||||
query = 'INSERT INTO mytable (a, b) VALUES (%s, %s)'
|
||||
|
Reference in New Issue
Block a user