From e10237e8558e2058eee56a28396feea4cb25d50e Mon Sep 17 00:00:00 2001 From: Blake Eggleston Date: Wed, 20 Mar 2013 19:28:33 -0700 Subject: [PATCH] changing list column behavior to load lists, not tuples, from the database --- cqlengine/columns.py | 4 ++++ cqlengine/tests/columns/test_container_columns.py | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cqlengine/columns.py b/cqlengine/columns.py index fd5fc7c9..f63afff1 100644 --- a/cqlengine/columns.py +++ b/cqlengine/columns.py @@ -433,6 +433,10 @@ class List(BaseContainerColumn): raise ValidationError('{} is not a list object'.format(val)) return [self.value_col.validate(v) for v in val] + def to_python(self, value): + if value is None: return None + return list(value) + def to_database(self, value): if value is None: return None if isinstance(value, self.Quoter): return value diff --git a/cqlengine/tests/columns/test_container_columns.py b/cqlengine/tests/columns/test_container_columns.py index 914c7479..b598da56 100644 --- a/cqlengine/tests/columns/test_container_columns.py +++ b/cqlengine/tests/columns/test_container_columns.py @@ -95,8 +95,8 @@ class TestListColumn(BaseCassEngTestCase): m1 = TestListModel.create(int_list=[1,2], text_list=['kai', 'andreas']) m2 = TestListModel.get(partition=m1.partition) - assert isinstance(m2.int_list, tuple) - assert isinstance(m2.text_list, tuple) + assert isinstance(m2.int_list, list) + assert isinstance(m2.text_list, list) assert len(m2.int_list) == 2 assert len(m2.text_list) == 2