Merge pull request #338 from kishkaru/fix_jenkins
Jenkins stabilization fixes
This commit is contained in:
@@ -13,9 +13,10 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
import json
|
import json, six, sys, traceback, logging
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
import six
|
|
||||||
|
from cassandra import WriteTimeout
|
||||||
|
|
||||||
from cassandra.cqlengine.models import Model, ValidationError
|
from cassandra.cqlengine.models import Model, ValidationError
|
||||||
import cassandra.cqlengine.columns as columns
|
import cassandra.cqlengine.columns as columns
|
||||||
@@ -23,10 +24,10 @@ from cassandra.cqlengine.management import sync_table, drop_table
|
|||||||
from tests.integration.cqlengine import is_prepend_reversed
|
from tests.integration.cqlengine import is_prepend_reversed
|
||||||
from tests.integration.cqlengine.base import BaseCassEngTestCase
|
from tests.integration.cqlengine.base import BaseCassEngTestCase
|
||||||
|
|
||||||
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class TestSetModel(Model):
|
class TestSetModel(Model):
|
||||||
|
|
||||||
|
|
||||||
partition = columns.UUID(primary_key=True, default=uuid4)
|
partition = columns.UUID(primary_key=True, default=uuid4)
|
||||||
int_set = columns.Set(columns.Integer, required=False)
|
int_set = columns.Set(columns.Integer, required=False)
|
||||||
text_set = columns.Set(columns.Text, required=False)
|
text_set = columns.Set(columns.Text, required=False)
|
||||||
@@ -124,7 +125,14 @@ class TestSetColumn(BaseCassEngTestCase):
|
|||||||
"""
|
"""
|
||||||
Tests that big collections are detected and raise an exception.
|
Tests that big collections are detected and raise an exception.
|
||||||
"""
|
"""
|
||||||
TestSetModel.create(text_set={str(uuid4()) for i in range(65535)})
|
while True:
|
||||||
|
try:
|
||||||
|
TestSetModel.create(text_set={str(uuid4()) for i in range(65535)})
|
||||||
|
break
|
||||||
|
except WriteTimeout:
|
||||||
|
ex_type, ex, tb = sys.exc_info()
|
||||||
|
log.warn("{0}: {1} Backtrace: {2}".format(ex_type.__name__, ex, traceback.extract_tb(tb)))
|
||||||
|
del tb
|
||||||
with self.assertRaises(ValidationError):
|
with self.assertRaises(ValidationError):
|
||||||
TestSetModel.create(text_set={str(uuid4()) for i in range(65536)})
|
TestSetModel.create(text_set={str(uuid4()) for i in range(65536)})
|
||||||
|
|
||||||
@@ -235,7 +243,14 @@ class TestListColumn(BaseCassEngTestCase):
|
|||||||
"""
|
"""
|
||||||
Tests that big collections are detected and raise an exception.
|
Tests that big collections are detected and raise an exception.
|
||||||
"""
|
"""
|
||||||
TestListModel.create(text_list=[str(uuid4()) for i in range(65535)])
|
while True:
|
||||||
|
try:
|
||||||
|
TestListModel.create(text_list=[str(uuid4()) for i in range(65535)])
|
||||||
|
break
|
||||||
|
except WriteTimeout:
|
||||||
|
ex_type, ex, tb = sys.exc_info()
|
||||||
|
log.warn("{0}: {1} Backtrace: {2}".format(ex_type.__name__, ex, traceback.extract_tb(tb)))
|
||||||
|
del tb
|
||||||
with self.assertRaises(ValidationError):
|
with self.assertRaises(ValidationError):
|
||||||
TestListModel.create(text_list=[str(uuid4()) for i in range(65536)])
|
TestListModel.create(text_list=[str(uuid4()) for i in range(65536)])
|
||||||
|
|
||||||
@@ -410,7 +425,14 @@ class TestMapColumn(BaseCassEngTestCase):
|
|||||||
"""
|
"""
|
||||||
Tests that big collections are detected and raise an exception.
|
Tests that big collections are detected and raise an exception.
|
||||||
"""
|
"""
|
||||||
TestMapModel.create(text_map={str(uuid4()): i for i in range(65535)})
|
while True:
|
||||||
|
try:
|
||||||
|
TestMapModel.create(text_map={str(uuid4()): i for i in range(65535)})
|
||||||
|
break
|
||||||
|
except WriteTimeout:
|
||||||
|
ex_type, ex, tb = sys.exc_info()
|
||||||
|
log.warn("{0}: {1} Backtrace: {2}".format(ex_type.__name__, ex, traceback.extract_tb(tb)))
|
||||||
|
del tb
|
||||||
with self.assertRaises(ValidationError):
|
with self.assertRaises(ValidationError):
|
||||||
TestMapModel.create(text_map={str(uuid4()): i for i in range(65536)})
|
TestMapModel.create(text_map={str(uuid4()): i for i in range(65536)})
|
||||||
|
|
||||||
|
|||||||
@@ -306,23 +306,23 @@ class UserDefinedTypeTests(BaseCassEngTestCase):
|
|||||||
if PROTOCOL_VERSION < 4:
|
if PROTOCOL_VERSION < 4:
|
||||||
raise unittest.SkipTest("Protocol v4 datatypes in UDTs require native protocol 4+, currently using: {0}".format(PROTOCOL_VERSION))
|
raise unittest.SkipTest("Protocol v4 datatypes in UDTs require native protocol 4+, currently using: {0}".format(PROTOCOL_VERSION))
|
||||||
|
|
||||||
class AllDatatypes(UserType):
|
class Allv4Datatypes(UserType):
|
||||||
a = columns.Date()
|
a = columns.Date()
|
||||||
b = columns.SmallInt()
|
b = columns.SmallInt()
|
||||||
c = columns.Time()
|
c = columns.Time()
|
||||||
d = columns.TinyInt()
|
d = columns.TinyInt()
|
||||||
|
|
||||||
class AllDatatypesModel(Model):
|
class Allv4DatatypesModel(Model):
|
||||||
id = columns.Integer(primary_key=True)
|
id = columns.Integer(primary_key=True)
|
||||||
data = columns.UserDefinedType(AllDatatypes)
|
data = columns.UserDefinedType(Allv4Datatypes)
|
||||||
|
|
||||||
sync_table(AllDatatypesModel)
|
sync_table(Allv4DatatypesModel)
|
||||||
|
|
||||||
input = AllDatatypes(a=Date(date(1970, 1, 1)), b=32523, c=Time(time(16, 47, 25, 7)), d=123)
|
input = Allv4Datatypes(a=Date(date(1970, 1, 1)), b=32523, c=Time(time(16, 47, 25, 7)), d=123)
|
||||||
AllDatatypesModel.create(id=0, data=input)
|
Allv4DatatypesModel.create(id=0, data=input)
|
||||||
|
|
||||||
self.assertEqual(1, AllDatatypesModel.objects.count())
|
self.assertEqual(1, Allv4DatatypesModel.objects.count())
|
||||||
output = AllDatatypesModel.objects().first().data
|
output = Allv4DatatypesModel.objects().first().data
|
||||||
|
|
||||||
for i in range(ord('a'), ord('a') + 3):
|
for i in range(ord('a'), ord('a') + 3):
|
||||||
self.assertEqual(input[chr(i)], output[chr(i)])
|
self.assertEqual(input[chr(i)], output[chr(i)])
|
||||||
|
|||||||
@@ -89,8 +89,6 @@ class TypeTests(unittest.TestCase):
|
|||||||
for expected, actual in zip(params, results):
|
for expected, actual in zip(params, results):
|
||||||
self.assertEqual(expected, actual)
|
self.assertEqual(expected, actual)
|
||||||
|
|
||||||
c.shutdown()
|
|
||||||
|
|
||||||
def test_can_insert_blob_type_as_bytearray(self):
|
def test_can_insert_blob_type_as_bytearray(self):
|
||||||
"""
|
"""
|
||||||
Tests that blob type in Cassandra maps to bytearray in Python
|
Tests that blob type in Cassandra maps to bytearray in Python
|
||||||
|
|||||||
Reference in New Issue
Block a user