36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
import random
|
|
from cqlengine.tests.base import BaseCassEngTestCase
|
|
|
|
from cqlengine.management import create_table
|
|
from cqlengine.management import delete_table
|
|
from cqlengine.models import Model
|
|
from cqlengine import columns
|
|
|
|
class TestModel(Model):
|
|
id = columns.Integer(primary_key=True)
|
|
clustering_key = columns.Integer(primary_key=True, clustering_order='desc')
|
|
|
|
class TestClusteringOrder(BaseCassEngTestCase):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super(TestClusteringOrder, cls).setUpClass()
|
|
create_table(TestModel)
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
super(TestClusteringOrder, cls).tearDownClass()
|
|
delete_table(TestModel)
|
|
|
|
def test_clustering_order(self):
|
|
"""
|
|
Tests that models can be saved and retrieved
|
|
"""
|
|
items = list(range(20))
|
|
random.shuffle(items)
|
|
for i in items:
|
|
TestModel.create(id=1, clustering_key=i)
|
|
|
|
values = list(TestModel.objects.values_list('clustering_key', flat=True))
|
|
self.assertEquals(values, sorted(items, reverse=True))
|