From 81d495ba54528ce60cc242be4cbd9e4203efd75c Mon Sep 17 00:00:00 2001 From: drebs Date: Thu, 24 Jan 2013 19:08:54 -0200 Subject: CouchDatabase refactoring and indexing. CouchDatabase now inherits from u1db InMemoryDatabase, so it can use all available facilities. The important thing is to make sure every modification of logs or indexes gets propagated to the ObjectStore backend. --- tests/test_couch.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'tests') diff --git a/tests/test_couch.py b/tests/test_couch.py index 5e8d6126..9e2f3909 100644 --- a/tests/test_couch.py +++ b/tests/test_couch.py @@ -46,9 +46,10 @@ def copy_couch_database_for_test(test, db): gen, docs = db.get_all_docs(include_deleted=True) for doc in docs: new_db._put_doc(doc) - new_db._transaction_log._data = copy.deepcopy(db._transaction_log._data) - new_db._sync_log._data = copy.deepcopy(db._sync_log._data) - new_db._conflict_log._data = copy.deepcopy(db._conflict_log._data) + new_db._transaction_log = copy.deepcopy(db._transaction_log) + new_db._conflicts = copy.deepcopy(db._conflicts) + new_db._other_generations = copy.deepcopy(db._other_generations) + new_db._indexes = copy.deepcopy(db._indexes) new_db._set_u1db_data() return new_db @@ -112,13 +113,13 @@ class CouchWithConflictsTests( # the server, so indexing makes no sense. Thus, we ignore index testing for # now. -# class CouchIndexTests(DatabaseIndexTests): -# -# scenarios = COUCH_SCENARIOS -# -# def tearDown(self): -# self.db.delete_database() -# super(CouchIndexTests, self).tearDown() +class CouchIndexTests(test_backends.DatabaseIndexTests): + + scenarios = COUCH_SCENARIOS + + def tearDown(self): + self.db.delete_database() + super(CouchIndexTests, self).tearDown() #----------------------------------------------------------------------------- -- cgit v1.2.3