summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/db/sqlalchemy/test_sqlalchemy.py45
-rw-r--r--tests/unit/db/test_api.py35
-rw-r--r--tests/utils.py20
3 files changed, 96 insertions, 4 deletions
diff --git a/tests/unit/db/sqlalchemy/test_sqlalchemy.py b/tests/unit/db/sqlalchemy/test_sqlalchemy.py
index 7cbe31d..b18825a 100644
--- a/tests/unit/db/sqlalchemy/test_sqlalchemy.py
+++ b/tests/unit/db/sqlalchemy/test_sqlalchemy.py
@@ -37,6 +37,51 @@ class TmpTable(BASE, models.ModelBase):
foo = Column(Integer)
+class SessionParametersTestCase(test_utils.BaseTestCase):
+
+ def test_deprecated_session_parameters(self):
+ paths = self.create_tempfiles([('test', """[DEFAULT]
+sql_connection=x://y.z
+sql_min_pool_size=10
+sql_max_pool_size=20
+sql_max_retries=30
+sql_retry_interval=40
+sql_max_overflow=50
+sql_connection_debug=60
+sql_connection_trace=True
+""")])
+ test_utils.CONF(['--config-file', paths[0]])
+ self.assertEquals(test_utils.CONF.database.connection, 'x://y.z')
+ self.assertEquals(test_utils.CONF.database.min_pool_size, 10)
+ self.assertEquals(test_utils.CONF.database.max_pool_size, 20)
+ self.assertEquals(test_utils.CONF.database.max_retries, 30)
+ self.assertEquals(test_utils.CONF.database.retry_interval, 40)
+ self.assertEquals(test_utils.CONF.database.max_overflow, 50)
+ self.assertEquals(test_utils.CONF.database.connection_debug, 60)
+ self.assertEquals(test_utils.CONF.database.connection_trace, True)
+
+ def test_session_parameters(self):
+ paths = self.create_tempfiles([('test', """[database]
+connection=x://y.z
+min_pool_size=10
+max_pool_size=20
+max_retries=30
+retry_interval=40
+max_overflow=50
+connection_debug=60
+connection_trace=True
+""")])
+ test_utils.CONF(['--config-file', paths[0]])
+ self.assertEquals(test_utils.CONF.database.connection, 'x://y.z')
+ self.assertEquals(test_utils.CONF.database.min_pool_size, 10)
+ self.assertEquals(test_utils.CONF.database.max_pool_size, 20)
+ self.assertEquals(test_utils.CONF.database.max_retries, 30)
+ self.assertEquals(test_utils.CONF.database.retry_interval, 40)
+ self.assertEquals(test_utils.CONF.database.max_overflow, 50)
+ self.assertEquals(test_utils.CONF.database.connection_debug, 60)
+ self.assertEquals(test_utils.CONF.database.connection_trace, True)
+
+
class SessionErrorWrapperTestCase(test_utils.BaseTestCase):
def setUp(self):
super(SessionErrorWrapperTestCase, self).setUp()
diff --git a/tests/unit/db/test_api.py b/tests/unit/db/test_api.py
index a31ffd0..f6e0d4c 100644
--- a/tests/unit/db/test_api.py
+++ b/tests/unit/db/test_api.py
@@ -32,9 +32,33 @@ class DBAPI(object):
class DBAPITestCase(test_utils.BaseTestCase):
+
+ def test_deprecated_dbapi_parameters(self):
+ paths = self.create_tempfiles([('test',
+ '[DEFAULT]\n'
+ 'db_backend=test_123\n'
+ 'dbapi_use_tpool=True\n'
+ )])
+
+ test_utils.CONF(['--config-file', paths[0]])
+ self.assertEquals(test_utils.CONF.database.backend, 'test_123')
+ self.assertEquals(test_utils.CONF.database.use_tpool, True)
+
+ def test_dbapi_parameters(self):
+ paths = self.create_tempfiles([('test',
+ '[database]\n'
+ 'backend=test_123\n'
+ 'use_tpool=True\n'
+ )])
+
+ test_utils.CONF(['--config-file', paths[0]])
+ self.assertEquals(test_utils.CONF.database.backend, 'test_123')
+ self.assertEquals(test_utils.CONF.database.use_tpool, True)
+
def test_dbapi_api_class_method_and_tpool_false(self):
backend_mapping = {'test_known': 'tests.unit.db.test_api'}
- self.config(db_backend='test_known', dbapi_use_tpool=False)
+ self.config(backend='test_known', use_tpool=False,
+ group='database')
info = dict(tpool=False)
orig_execute = tpool.execute
@@ -53,7 +77,8 @@ class DBAPITestCase(test_utils.BaseTestCase):
def test_dbapi_api_class_method_and_tpool_true(self):
backend_mapping = {'test_known': 'tests.unit.db.test_api'}
- self.config(db_backend='test_known', dbapi_use_tpool=True)
+ self.config(backend='test_known', use_tpool=True,
+ group='database')
info = dict(tpool=False)
orig_execute = tpool.execute
@@ -71,14 +96,16 @@ class DBAPITestCase(test_utils.BaseTestCase):
self.assertTrue(info['tpool'])
def test_dbapi_full_path_module_method(self):
- self.config(db_backend='tests.unit.db.test_api')
+ self.config(backend='tests.unit.db.test_api',
+ group='database')
dbapi = api.DBAPI()
result = dbapi.api_class_call1(1, 2, kwarg1='meow')
expected = ((1, 2), {'kwarg1': 'meow'})
self.assertEqual(expected, result)
def test_dbapi_unknown_invalid_backend(self):
- self.config(db_backend='tests.unit.db.not_existant')
+ self.config(backend='tests.unit.db.not_existent',
+ group='database')
dbapi = api.DBAPI()
def call_it():
diff --git a/tests/utils.py b/tests/utils.py
index c5c7c00..4682428 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -17,6 +17,9 @@
"""Common utilities used in testing"""
+import os
+import tempfile
+
import fixtures
from oslo.config import cfg
import testtools
@@ -36,6 +39,8 @@ class BaseTestCase(testtools.TestCase):
self.useFixture(fixtures.FakeLogger('openstack.common'))
self.useFixture(fixtures.Timeout(30, True))
self.stubs.Set(exception, '_FATAL_EXCEPTION_FORMAT_ERRORS', True)
+ self.useFixture(fixtures.NestedTempfile())
+ self.tempdirs = []
def tearDown(self):
super(BaseTestCase, self).tearDown()
@@ -43,6 +48,21 @@ class BaseTestCase(testtools.TestCase):
self.stubs.UnsetAll()
self.stubs.SmartUnsetAll()
+ def create_tempfiles(self, files, ext='.conf'):
+ tempfiles = []
+ for (basename, contents) in files:
+ if not os.path.isabs(basename):
+ (fd, path) = tempfile.mkstemp(prefix=basename, suffix=ext)
+ else:
+ path = basename + ext
+ fd = os.open(path, os.O_CREAT | os.O_WRONLY)
+ tempfiles.append(path)
+ try:
+ os.write(fd, contents)
+ finally:
+ os.close(fd)
+ return tempfiles
+
def config(self, **kw):
"""
Override some configuration values.