You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ee...@apache.org on 2010/02/26 00:32:08 UTC
svn commit: r916491 -
/incubator/cassandra/trunk/test/system/test_avro_server.py
Author: eevans
Date: Thu Feb 25 23:32:08 2010
New Revision: 916491
URL: http://svn.apache.org/viewvc?rev=916491&view=rev
Log:
add new test_insert_super func test for avro
Patch by eevans
Modified:
incubator/cassandra/trunk/test/system/test_avro_server.py
Modified: incubator/cassandra/trunk/test/system/test_avro_server.py
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/system/test_avro_server.py?rev=916491&r1=916490&r2=916491&view=diff
==============================================================================
--- incubator/cassandra/trunk/test/system/test_avro_server.py (original)
+++ incubator/cassandra/trunk/test/system/test_avro_server.py Thu Feb 25 23:32:08 2010
@@ -48,6 +48,21 @@
params['timestamp'] = long(time())
client.request('insert', params)
+def _insert_supercolumn(client, super_name, name, value):
+ params = dict()
+ params['keyspace'] = 'Keyspace1'
+ params['key'] = 'key1'
+ params['timestamp'] = long(time())
+ params['consistency_level'] = 'ONE'
+
+ params['column_path'] = dict()
+ params['column_path']['column_family'] = 'Super4'
+ params['column_path']['super_column'] = super_name
+ params['column_path']['column'] = name
+ params['value'] = value
+
+ client.request('insert', params)
+
def _get_column(client, name):
params = dict()
params['keyspace'] = 'Keyspace1'
@@ -56,22 +71,35 @@
params['consistency_level'] = 'ONE'
return client.request('get', params)
+def _get_supercolumn(client, super_name, name):
+ params = dict()
+ params['keyspace'] = 'Keyspace1'
+ params['key'] = 'key1'
+ params['column_path'] = dict()
+ params['column_path']['column_family'] = 'Super4'
+ params['column_path']['super_column'] = super_name
+ params['column_path']['column'] = name
+ params['consistency_level'] = 'ONE'
+
+ return client.request('get', params)
+
def assert_columns_match(colA, colB):
assert colA['name'] == colB['name'], \
"column name mismatch: %s != %s" % (colA['name'], colB['name'])
assert colA['value'] == colB['value'], \
"column value mismatch: %s != %s" % (colA['value'], colB['value'])
-def random_column():
- return COLUMNS[randint(0, len(COLUMNS)-1)]
+def random_column(columns=COLUMNS):
+ return columns[randint(0, len(columns)-1)]
-def random_supercolumn():
- return SUPERCOLUMNS[randint(0, len(SUPERCOLUMNS)-1)]
+def random_supercolumn(super_columns=SUPERCOLUMNS):
+ return super_columns[randint(0, len(super_columns)-1)]
class TestRpcOperations(AvroTester):
def test_insert_simple(self): # Also tests get
"setting and getting a simple column"
column = random_column()
+
_insert_column(self.client, column)
result = _get_column(self.client, column['name'])
@@ -79,6 +107,18 @@
and result['column'].has_key('name')
assert_columns_match(result['column'], column)
+ def test_insert_super(self):
+ "setting and getting a super column"
+ sc = random_supercolumn()
+ col = random_column(sc['columns'])
+
+ _insert_supercolumn(self.client, sc['name'], col['name'], col['value'])
+ result = _get_supercolumn(self.client, sc['name'], col['name'])
+
+ assert isinstance(result, dict) and result.has_key('column') \
+ and result['column'].has_key('name')
+ assert_columns_match(result['column'], col)
+
def test_batch_insert(self):
"performing a batch insert operation"
# TODO: do