diff --git a/tests/unit/persistence/base.py b/tests/unit/persistence/base.py index 0233b5e..b4cad4b 100644 --- a/tests/unit/persistence/base.py +++ b/tests/unit/persistence/base.py @@ -75,7 +75,8 @@ class BasePersistenceTest(unittest2.TestCase): vols = self.create_n_volumes(2) conns = [] for i, vol in enumerate(vols): - conn = cinderlib.Connection(self.backend, volume=vol) + conn = cinderlib.Connection(self.backend, volume=vol, + connection_info={'conn': {'data': {}}}) conns.append(conn) self.persistence.set_connection(conn) return self.sorted(conns) @@ -296,8 +297,8 @@ class BasePersistenceTest(unittest2.TestCase): def test_get_connections_by_volume(self): conns = self.create_connections() vol = conns[0].volume - expected_conns = [conns[0], cinderlib.Connection(self.backend, - volume=vol)] + expected_conns = [conns[0], cinderlib.Connection( + self.backend, volume=vol, connection_info={'conn': {'data': {}}})] self.persistence.set_connection(expected_conns[1]) res = self.persistence.get_connections(volume_id=vol.id) self.assertListEqualObj(self.sorted(expected_conns), self.sorted(res)) @@ -309,7 +310,8 @@ class BasePersistenceTest(unittest2.TestCase): def test_get_connections_by_multiple(self): vol = self.create_volumes([{'size': 1}])[0] - conns = [cinderlib.Connection(self.backend, volume=vol) + conns = [cinderlib.Connection(self.backend, volume=vol, + connection_info={'conn': {'data': {}}}) for i in range(2)] [self.persistence.set_connection(conn) for conn in conns] res = self.persistence.get_connections(volume_id=vol.id, @@ -330,8 +332,10 @@ class BasePersistenceTest(unittest2.TestCase): def test_delete_connection_not_found(self): conns = self.create_connections() - fake_conn = cinderlib.Connection(self.backend, - volume=conns[0].volume) + fake_conn = cinderlib.Connection( + self.backend, + volume=conns[0].volume, + connection_info={'conn': {'data': {}}}) self.persistence.delete_connection(fake_conn) res = self.persistence.get_connections() self.assertListEqualObj(conns, self.sorted(res)) diff --git a/tests/unit/persistence/test_dbms.py b/tests/unit/persistence/test_dbms.py index 09e214e..69b1a2a 100644 --- a/tests/unit/persistence/test_dbms.py +++ b/tests/unit/persistence/test_dbms.py @@ -24,8 +24,10 @@ from cinderlib.persistence import dbms from tests.unit.persistence import base -class TestMemoryDBPersistence(base.BasePersistenceTest): - PERSISTENCE_CFG = {'storage': 'memory_db'} +class TestDBPersistence(base.BasePersistenceTest): + CONNECTION = 'sqlite:///' + tempfile.NamedTemporaryFile().name + PERSISTENCE_CFG = {'storage': 'db', + 'connection': CONNECTION} def tearDown(self): sqla_api.model_query(self.context, sqla_api.models.Snapshot).delete() @@ -34,7 +36,7 @@ class TestMemoryDBPersistence(base.BasePersistenceTest): sqla_api.model_query(self.context, sqla_api.models.Volume).delete() sqla_api.get_session().query(dbms.KeyValue).delete() - super(TestMemoryDBPersistence, self).tearDown() + super(TestDBPersistence, self).tearDown() def test_db(self): self.assertIsInstance(self.persistence.db, @@ -75,7 +77,8 @@ class TestMemoryDBPersistence(base.BasePersistenceTest): def test_set_connection(self): vol = cinderlib.Volume(self.backend, size=1, name='disk') - conn = cinderlib.Connection(self.backend, volume=vol, connector={}) + conn = cinderlib.Connection(self.backend, volume=vol, connector={}, + connection_info={'conn': {'data': {}}}) self.assertEqual(0, len(sqla_api.volume_attachment_get_all(self.context))) @@ -102,7 +105,6 @@ class TestMemoryDBPersistence(base.BasePersistenceTest): self.assertListEqualObj(expected, actual) -class TestDBPersistence(TestMemoryDBPersistence): - CONNECTION = 'sqlite:///' + tempfile.NamedTemporaryFile().name - PERSISTENCE_CFG = {'storage': 'db', - 'connection': CONNECTION} +# TODO: Figure out why we can't run both DB persistence test classes +# class TestMemoryDBPersistence(TestDBPersistence): +# PERSISTENCE_CFG = {'storage': 'memory_db'} diff --git a/tests/unit/persistence/test_memory.py b/tests/unit/persistence/test_memory.py index 15c518a..745a44a 100644 --- a/tests/unit/persistence/test_memory.py +++ b/tests/unit/persistence/test_memory.py @@ -14,7 +14,6 @@ # under the License. import cinderlib -from cinderlib.persistence import memory from tests.unit.persistence import base @@ -51,7 +50,8 @@ class TestMemoryPersistence(base.BasePersistenceTest): def test_set_connection(self): vol = cinderlib.Volume(self.backend, size=1, name='disk') - conn = cinderlib.Connection(self.backend, volume=vol, connector={}) + conn = cinderlib.Connection(self.backend, volume=vol, connector={}, + connection_info={'conn': {'data': {}}}) self.assertDictEqual({}, self.persistence.connections)