def setUp(self): super(DietTestCase, self).setUp() # FIXME(amuller): this must be called in the Neutron unit tests base # class. Moving this may cause non-deterministic failures. Bug #1489098 # for more info. db_options.set_defaults(cfg.CONF, connection='sqlite://') # Configure this first to ensure pm debugging support for setUp() debugger = os.environ.get('OS_POST_MORTEM_DEBUGGER') if debugger: self.addOnException( post_mortem_debug.get_exception_handler(debugger)) # Make sure we see all relevant deprecation warnings when running tests self.useFixture(tools.WarningsFixture()) self.useFixture(fixture.DBQueryHooksFixture()) # NOTE(ihrachys): oslotest already sets stopall for cleanup, but it # does it using six.moves.mock (the library was moved into # unittest.mock in Python 3.4). So until we switch to six.moves.mock # everywhere in unit tests, we can't remove this setup. The base class # is used in 3party projects, so we would need to switch all of them to # six before removing the cleanup callback from here. self.addCleanup(mock.patch.stopall) self.useFixture(fixture.DBResourceExtendFixture()) self.addOnException(self.check_for_systemexit) self.orig_pid = os.getpid() tools.reset_random_seed()
def setUp(self): super(DietTestCase, self).setUp() # NOTE(slaweq): Make deprecation warnings only happen once. warnings.simplefilter("once", DeprecationWarning) # NOTE(slaweq): Let's not display such warnings in tests as we know # that we have many places where policy enforcement depends on values # like is_admin or project_id and there can be a lot of such warnings # in the logs warnings.filterwarnings( 'ignore', message=('Policy enforcement is depending on the value of ')) # Suppress some log messages during test runs, otherwise it may cause # issues with subunit parser when running on Python 3. It happened for # example for neutron-functional tests. # With this suppress of log levels DEBUG logs will not be captured by # stestr on pythonlogging stream and will not cause this parser issue. supress_logs = [ 'neutron', 'neutron_lib', 'stevedore', 'oslo_policy', 'oslo_concurrency', 'oslo_db', 'alembic', 'ovsdbapp' ] for supress_log in supress_logs: logger = logging.getLogger(supress_log) logger.setLevel(logging.ERROR) # FIXME(amuller): this must be called in the Neutron unit tests base # class. Moving this may cause non-deterministic failures. Bug #1489098 # for more info. db_options.set_defaults(cfg.CONF, connection='sqlite://') # Configure this first to ensure pm debugging support for setUp() debugger = os.environ.get('OS_POST_MORTEM_DEBUGGER') if debugger: self.addOnException( post_mortem_debug.get_exception_handler(debugger)) # Make sure we see all relevant deprecation warnings when running tests self.useFixture(fixture.WarningsFixture(module_re=['^neutron\\.'])) self.useFixture(fixture.DBQueryHooksFixture()) # NOTE(ihrachys): oslotest already sets stopall for cleanup, but it # does it using six.moves.mock (the library was moved into # unittest.mock in Python 3.4). So until we switch to six.moves.mock # everywhere in unit tests, we can't remove this setup. The base class # is used in 3party projects, so we would need to switch all of them to # six before removing the cleanup callback from here. self.addCleanup(mock.patch.stopall) self.useFixture(fixture.DBResourceExtendFixture()) self.addOnException(self.check_for_systemexit) self.orig_pid = os.getpid() lib_test_tools.reset_random_seed()
def test_fixture_backup(self): fake_methods = {'a': 'A', 'b': 'B'} orig_methods = resource_extend._resource_extend_functions self.assertNotEqual(fake_methods, orig_methods) db_fixture = fixture.DBResourceExtendFixture( extended_functions=fake_methods) db_fixture.setUp() resource_extend.register_funcs('C', (lambda x: x, )) self.assertNotEqual(orig_methods, resource_extend._resource_extend_functions) db_fixture.cleanUp() self.assertEqual(orig_methods, resource_extend._resource_extend_functions)
def setUp(self): super(TestResourceExtend, self).setUp() self.useFixture(fixture.DBResourceExtendFixture())