diff options
| author | LV-426 <lv-426@taproot.org.il> | 2014-10-07 21:19:36 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2014-10-07 21:19:36 +0200 |
| commit | 337e0d2ce4706e8ebd176b7a7e6e5f82d461e007 (patch) | |
| tree | 42c82a893387743fc81b883d66a2d3945161940d /src-py | |
| parent | e69fcf28ea7fe5af9c46b71dd03e86b75f885e27 (diff) | |
DB_op statement __iter__
Diffstat (limited to 'src-py')
| -rw-r--r-- | src-py/db_controller.py | 18 | ||||
| -rw-r--r-- | src-py/test_db_controller.py | 14 |
2 files changed, 24 insertions, 8 deletions
diff --git a/src-py/db_controller.py b/src-py/db_controller.py index 8ca3a642..52913ac5 100644 --- a/src-py/db_controller.py +++ b/src-py/db_controller.py @@ -39,14 +39,16 @@ class DB_op(object): return ret def __iter__(self): - # TODO impl - pass - # for k, v in self.id_to_statement_map: - # yield {k, v, None} - - @property - def statement_set(self): - return self.id_to_statement_map.values() + """ + iterate over (statement_index, statement, statement_result) + note: statement_index is zero based + + TODO: support statement_result + """ + i = 0 + for s in self.statement_set: + yield (i, s, None) + i = i + 1 def extract_single_query_response_data(self, q, data): """ diff --git a/src-py/test_db_controller.py b/src-py/test_db_controller.py index f64c47ce..f7092e6d 100644 --- a/src-py/test_db_controller.py +++ b/src-py/test_db_controller.py @@ -29,6 +29,20 @@ class TestDBController(unittest.TestCase): def setUp(self): pass + def test_db_op_statement_iter(self): + s_arr = ['match (n) return n', + 'create (b:Book {\'title\': \'foo\'}) return b'] + + db_op = dbc.DB_op() + db_op.add_statement(s_arr[0]) + db_op.add_statement(s_arr[1]) + + i = 0 + for s in db_op: + # access: second tuple item -> REST-form 'statement' key + self.assertEqual(s_arr[i], s[1]['statement']) + i = i + 1 + def test_load_node_set_by_attribute(self): filter_map = { 'name': ['Bob', u'Judo'], 'age': [128] } |
