merge test and default configs

This commit is contained in:
termie 2012-01-09 15:52:48 -08:00
parent 43b683b342
commit 3c88b7f546
8 changed files with 46 additions and 80 deletions

View File

@ -19,11 +19,25 @@ from keystone import wsgi
ROOTDIR = os.path.dirname(os.path.dirname(__file__))
VENDOR = os.path.join(ROOTDIR, 'vendor')
TESTSDIR = os.path.join(ROOTDIR, 'tests')
ETCDIR = os.path.join(ROOTDIR, 'etc')
CONF = config.CONF
cd = os.chdir
def rootdir(*p):
return os.path.join(ROOTDIR, *p)
def etcdir(*p):
return os.path.join(ETCDIR, *p)
def testsdir(*p):
return os.path.join(TESTSDIR, *p)
def checkout_vendor(repo, rev):
name = repo.split('/')[-1]
if name.endswith('.git'):
@ -142,15 +156,20 @@ class TestCase(unittest.TestCase):
'metadata_%s%s' % (metadata['user_id'],
metadata['tenant_id']), rv)
def loadapp(self, config, name='main'):
def _paste_config(self, config):
if not config.startswith('config:'):
config = 'config:%s.conf' % os.path.join(TESTSDIR, config)
return deploy.loadapp(config, name=name)
test_path = os.path.join(TESTSDIR, config)
etc_path = os.path.join(ROOTDIR, 'etc', config)
for path in [test_path, etc_path]:
if os.path.exists('%s.conf' % path):
return 'config:%s.conf' % path
return config
def loadapp(self, config, name='main'):
return deploy.loadapp(self._paste_config(config), name=name)
def appconfig(self, config):
if not config.startswith('config:'):
config = 'config:%s.conf' % os.path.join(TESTSDIR, config)
return deploy.appconfig(config)
return deploy.appconfig(self._paste_config(config))
def serveapp(self, config, name=None):
app = self.loadapp(config, name=name)

View File

@ -1,62 +0,0 @@
[DEFAULT]
public_port = 5000
admin_port = 35357
admin_token = ADMIN
compute_port = 3000
[sql]
connection = sqlite:///bla.db
idle_timeout = 200
min_pool_size = 5
max_pool_size = 10
pool_timeout = 200
[identity]
driver = keystone.backends.kvs.KvsIdentity
[catalog]
driver = keystone.backends.templated.TemplatedCatalog
template_file = default_catalog.templates
[token]
driver = keystone.backends.kvs.KvsToken
[policy]
driver = keystone.backends.policy.SimpleMatch
[filter:debug]
paste.filter_factory = keystone.wsgi:Debug.factory
[filter:token_auth]
paste.filter_factory = keystone.middleware:TokenAuthMiddleware.factory
[filter:admin_token_auth]
paste.filter_factory = keystone.middleware:AdminTokenAuthMiddleware.factory
[filter:json_body]
paste.filter_factory = keystone.middleware:JsonBodyMiddleware.factory
[filter:crud_extension]
paste.filter_factory = keystone.service:AdminCrudExtension.factory
[app:public_service]
paste.app_factory = keystone.service:public_app_factory
[app:admin_service]
paste.app_factory = keystone.service:admin_app_factory
[pipeline:public_api]
pipeline = token_auth admin_token_auth json_body debug public_service
[pipeline:admin_api]
pipeline = token_auth admin_token_auth json_body debug crud_extension admin_service
[composite:main]
use = egg:Paste#urlmap
/v2.0 = public_api
[composite:admin]
use = egg:Paste#urlmap
/v2.0 = admin_api

View File

@ -22,7 +22,9 @@ class SqlIdentity(test.TestCase, test_backend.IdentityTests):
os.unlink('bla.db')
except Exception:
pass
CONF(config_files=['default.conf', 'backend_sql.conf'])
CONF(config_files=[test.etcdir('keystone.conf'),
test.testsdir('test_overrides.conf'),
test.testsdir('backend_sql.conf')])
sql_util.setup_test_database()
self.identity_api = sql.SqlIdentity()
self.load_fixtures(default_fixtures)

View File

@ -44,14 +44,14 @@ class KcMasterTestCase(CompatTestCase):
reload(ks_client)
self._config()
self.public_app = self.loadapp('default', name='main')
self.admin_app = self.loadapp('default', name='admin')
self.public_app = self.loadapp('keystone', name='main')
self.admin_app = self.loadapp('keystone', name='admin')
self.load_backends()
self.load_fixtures(default_fixtures)
self.public_server = self.serveapp('default', name='main')
self.admin_server = self.serveapp('default', name='admin')
self.public_server = self.serveapp('keystone', name='main')
self.admin_server = self.serveapp('keystone', name='admin')
# TODO(termie): is_admin is being deprecated once the policy stuff
# is all working
@ -62,7 +62,8 @@ class KcMasterTestCase(CompatTestCase):
dict(roles=['keystone_admin'], is_admin='1'))
def _config(self):
CONF(config_files=['default.conf'])
CONF(config_files=[test.etcdir('keystone.conf'),
test.testsdir('test_overrides.conf')])
def foo_client(self):
return self._client(username='FOO',

View File

@ -12,5 +12,7 @@ CONF = config.CONF
class KcMasterSqlTestCase(test_keystoneclient.KcMasterTestCase):
def _config(self):
CONF(config_files=['default.conf', 'backend_sql.conf'])
CONF(config_files=[test.etcdir('keystone.conf'),
test.testsdir('test_overrides.conf'),
test.testsdir('backend_sql.conf')])
sql_util.setup_test_database()

View File

@ -117,11 +117,12 @@ class CompatTestCase(test.TestCase):
class DiabloCompatTestCase(CompatTestCase):
def setUp(self):
CONF(config_files=['default.conf'])
CONF(config_files=[test.etcdir('keystone.conf'),
test.testsdir('test_overrides.conf')])
revdir = test.checkout_vendor(KEYSTONE_REPO, 'stable/diablo')
self.sampledir = os.path.join(revdir, KEYSTONE_SAMPLE_DIR)
self.app = self.loadapp('default')
self.app = self.loadapp('keystone')
self.load_backends()
super(DiabloCompatTestCase, self).setUp()

View File

@ -32,11 +32,12 @@ class NovaClientCompatMasterTestCase(CompatTestCase):
reload(ks_client)
reload(base_client)
CONF(config_files=['default.conf'])
self.app = self.loadapp('default')
CONF(config_files=[test.etcdir('keystone.conf'),
test.testsdir('test_overrides.conf')])
self.app = self.loadapp('keystone')
self.load_backends()
self.load_fixtures(default_fixtures)
self.server = self.serveapp('default')
self.server = self.serveapp('keystone')
def test_authenticate_and_tenants(self):
from novaclient.keystone import client as ks_client

View File

@ -0,0 +1,2 @@
[catalog]
template_file = default_catalog.templates