From 2154861bd92e1910606f84108f8aeb8b094a1ede Mon Sep 17 00:00:00 2001 From: LiuNanke Date: Thu, 7 Jan 2016 00:45:18 +0800 Subject: [PATCH] Add enforce_type=True in CONF.set_override Each config option has limitation for type and value. In production code, oslo.conf can ensure user's input is valid, but in unit test, test methods can pass if we use method CONF.set_override without parameter enforce_type=True even we pass wrong type or wrong value to config option. This commit makes sure calling method CONF.set_override with enforce_type=True. Closes-bug: #1517839 Change-Id: I7a4e00c0eb6423d0826eb1c1b1e1ad3da786fb52 --- cue/tests/functional/base.py | 2 +- .../functional/db/manage/database/test_migration.py | 3 ++- cue/tests/functional/monitor/test_monitor.py | 9 ++++++--- cue/tests/unit/manage/database/test_migration.py | 3 ++- cue/tests/unit/monitor/test_monitor.py | 12 ++++++++---- 5 files changed, 19 insertions(+), 10 deletions(-) diff --git a/cue/tests/functional/base.py b/cue/tests/functional/base.py index 2963dd78..4fa6224a 100644 --- a/cue/tests/functional/base.py +++ b/cue/tests/functional/base.py @@ -131,7 +131,7 @@ class FunctionalTestCase(base.BaseTestCase): def flags(self, group=None, **kw): """Override flag variables for a test.""" for k, v in six.iteritems(kw): - CONF.set_override(k, v, group) + CONF.set_override(k, v, group, enforce_type=True) def path_get(self, project_file=None): """Get the absolute path to a file. Used for testing the API. diff --git a/cue/tests/functional/db/manage/database/test_migration.py b/cue/tests/functional/db/manage/database/test_migration.py index 57516e9e..7d514ab3 100644 --- a/cue/tests/functional/db/manage/database/test_migration.py +++ b/cue/tests/functional/db/manage/database/test_migration.py @@ -40,7 +40,8 @@ class MigrationFunctionalTests(base.BaseTestCase): self.config = self.config_fixture.config self.config_fixture.register_opt(cfg.StrOpt( 'connection', default='sqlite://')) - conf.set_override('connection', 'sqlite://', 'database') + conf.set_override('connection', 'sqlite://', 'database', + enforce_type=True) self.cmd = database.DatabaseCommands() diff --git a/cue/tests/functional/monitor/test_monitor.py b/cue/tests/functional/monitor/test_monitor.py index 339dd360..2702bf15 100644 --- a/cue/tests/functional/monitor/test_monitor.py +++ b/cue/tests/functional/monitor/test_monitor.py @@ -37,9 +37,12 @@ class MonitorFunctionalTests(base.FunctionalTestCase): def setUp(self): super(MonitorFunctionalTests, self).setUp() - CONF.set_override("coord_url", "zake", group="taskflow") - CONF.set_override("zk_hosts", "", group="taskflow") - CONF.set_override("zk_port", "", group="taskflow") + CONF.set_override("coord_url", "zake", group="taskflow", + enforce_type=True) + CONF.set_override("zk_hosts", "", group="taskflow", + enforce_type=True) + CONF.set_override("zk_port", "", group="taskflow", + enforce_type=True) self.test_uuid_1 = uuid.uuid4() self.test_uuid_2 = uuid.uuid4() diff --git a/cue/tests/unit/manage/database/test_migration.py b/cue/tests/unit/manage/database/test_migration.py index cb9290ff..e9ddd8d8 100644 --- a/cue/tests/unit/manage/database/test_migration.py +++ b/cue/tests/unit/manage/database/test_migration.py @@ -33,7 +33,8 @@ class TestMigration(oslo_base.BaseTestCase): def setUp(self): super(TestMigration, self).setUp() - CONF.set_override("connection", "sqlite://", group="database") + CONF.set_override("connection", "sqlite://", group="database", + enforce_type=True) self.cue_manage_database = cue_db.DatabaseCommands() @mock.patch('oslo_db.sqlalchemy.migration_cli.manager.' diff --git a/cue/tests/unit/monitor/test_monitor.py b/cue/tests/unit/monitor/test_monitor.py index dbcd2b97..50f546f8 100644 --- a/cue/tests/unit/monitor/test_monitor.py +++ b/cue/tests/unit/monitor/test_monitor.py @@ -33,9 +33,12 @@ class TestMonitorService(oslo_base.BaseTestCase): def setUp(self): super(TestMonitorService, self).setUp() - CONF.set_override("coord_url", "zake", group="taskflow") - CONF.set_override("zk_hosts", "", group="taskflow") - CONF.set_override("zk_port", "", group="taskflow") + CONF.set_override("coord_url", "zake", group="taskflow", + enforce_type=True) + CONF.set_override("zk_hosts", "", group="taskflow", + enforce_type=True) + CONF.set_override("zk_port", "", group="taskflow", + enforce_type=True) self.cue_monitor_service = cue_monitor_service.MonitorService() @@ -45,7 +48,8 @@ class TestMonitorService(oslo_base.BaseTestCase): mock_fixed_interval_loop_call_start, mock_loop_call_wait): CONF.set_override("loop_interval_seconds", "9001", - group="cue_monitor") + group="cue_monitor", + enforce_type=True) self.cue_monitor_service.start()