fixing more where construction tests
This commit is contained in:
@@ -22,14 +22,14 @@ class TestQuerySetOperation(BaseCassEngTestCase):
|
|||||||
assert len(query1._where) == 1
|
assert len(query1._where) == 1
|
||||||
|
|
||||||
op = query1._where[0]
|
op = query1._where[0]
|
||||||
assert isinstance(op, operators.EqualsOperator)
|
assert isinstance(op.operator, operators.EqualsOperator)
|
||||||
assert op.value == 5
|
assert op.value == 5
|
||||||
|
|
||||||
query2 = query1.filter(expected_result__gte=1)
|
query2 = query1.filter(expected_result__gte=1)
|
||||||
assert len(query2._where) == 2
|
assert len(query2._where) == 2
|
||||||
|
|
||||||
op = query2._where[1]
|
op = query2._where[1]
|
||||||
assert isinstance(op, operators.GreaterThanOrEqualOperator)
|
assert isinstance(op.operator, operators.GreaterThanOrEqualOperator)
|
||||||
assert op.value == 1
|
assert op.value == 1
|
||||||
|
|
||||||
def test_query_expression_parsing(self):
|
def test_query_expression_parsing(self):
|
||||||
@@ -59,8 +59,7 @@ class TestQuerySetOperation(BaseCassEngTestCase):
|
|||||||
self.assertEqual(where.value, 5)
|
self.assertEqual(where.value, 5)
|
||||||
|
|
||||||
query2 = query1.filter(expected_result__gte=1)
|
query2 = query1.filter(expected_result__gte=1)
|
||||||
where = query2._where
|
self.assertEqual(len(query2._where), 2)
|
||||||
self.assertEqual(len(where), 2)
|
|
||||||
|
|
||||||
where = query2._where[0]
|
where = query2._where[0]
|
||||||
self.assertEqual(where.field, 'test_id')
|
self.assertEqual(where.field, 'test_id')
|
||||||
@@ -77,14 +76,23 @@ class TestQuerySetOperation(BaseCassEngTestCase):
|
|||||||
Tests the where clause creation
|
Tests the where clause creation
|
||||||
"""
|
"""
|
||||||
query1 = self.table.objects(self.table.column('test_id') == 5)
|
query1 = self.table.objects(self.table.column('test_id') == 5)
|
||||||
ids = [o.query_value.identifier for o in query1._where]
|
self.assertEqual(len(query1._where), 1)
|
||||||
where = query1._where_clause()
|
where = query1._where[0]
|
||||||
assert where == '"test_id" = :{}'.format(*ids)
|
self.assertEqual(where.field, 'test_id')
|
||||||
|
self.assertEqual(where.value, 5)
|
||||||
|
|
||||||
query2 = query1.filter(self.table.column('expected_result') >= 1)
|
query2 = query1.filter(self.table.column('expected_result') >= 1)
|
||||||
ids = [o.query_value.identifier for o in query2._where]
|
self.assertEqual(len(query2._where), 2)
|
||||||
where = query2._where_clause()
|
|
||||||
assert where == '"test_id" = :{} AND "expected_result" >= :{}'.format(*ids)
|
where = query2._where[0]
|
||||||
|
self.assertEqual(where.field, 'test_id')
|
||||||
|
self.assertIsInstance(where.operator, EqualsOperator)
|
||||||
|
self.assertEqual(where.value, 5)
|
||||||
|
|
||||||
|
where = query2._where[1]
|
||||||
|
self.assertEqual(where.field, 'expected_result')
|
||||||
|
self.assertIsInstance(where.operator, GreaterThanOrEqualOperator)
|
||||||
|
self.assertEqual(where.value, 1)
|
||||||
|
|
||||||
|
|
||||||
class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage):
|
class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage):
|
||||||
@@ -99,7 +107,6 @@ class TestQuerySetCountSelectionAndIteration(BaseQuerySetUsage):
|
|||||||
cls.keyspace = NamedKeyspace(ks)
|
cls.keyspace = NamedKeyspace(ks)
|
||||||
cls.table = cls.keyspace.table(tn)
|
cls.table = cls.keyspace.table(tn)
|
||||||
|
|
||||||
|
|
||||||
def test_count(self):
|
def test_count(self):
|
||||||
""" Tests that adding filtering statements affects the count query as expected """
|
""" Tests that adding filtering statements affects the count query as expected """
|
||||||
assert self.table.objects.count() == 12
|
assert self.table.objects.count() == 12
|
||||||
|
|||||||
Reference in New Issue
Block a user