diff --git a/deluge/component.py b/deluge/component.py index 904c8462c..4ae985ac9 100644 --- a/deluge/component.py +++ b/deluge/component.py @@ -385,13 +385,8 @@ class ComponentRegistry(object): :rtype: twisted.internet.defer.Deferred """ - def on_success(result, key): - del _ComponentRegistry.components[key] - return succeed(result) - def on_stopped(result): - return DeferredList(map(lambda t: t[1]._component_shutdown().addCallback(on_success, t[0]), - self.components.items())) + return DeferredList(map(lambda c: c._component_shutdown(), self.components.values())) return self.stop(self.components.keys()).addCallback(on_stopped) diff --git a/deluge/tests/basetest.py b/deluge/tests/basetest.py index 952c58661..478ba398e 100644 --- a/deluge/tests/basetest.py +++ b/deluge/tests/basetest.py @@ -25,9 +25,9 @@ class BaseTestCase(unittest.TestCase): d = maybeDeferred(self.tear_down) def on_teared_down(result): - if len(component._ComponentRegistry.components) != 0: - warnings.warn("The component._ComponentRegistry.components is not empty after the test finished!: %s" % - component._ComponentRegistry.components) + component._ComponentRegistry.components.clear() + component._ComponentRegistry.dependents.clear() + return d.addCallback(on_teared_down) def set_up(self): diff --git a/deluge/tests/test_core.py b/deluge/tests/test_core.py index 2b7cca121..e2004ea75 100644 --- a/deluge/tests/test_core.py +++ b/deluge/tests/test_core.py @@ -69,7 +69,8 @@ class TopLevelResource(Resource): class CoreTestCase(BaseTestCase): - def setUp(self): # NOQA + + def set_up(self): common.set_tmp_config_dir() self.rpcserver = RPCServer(listen=False) self.core = Core() @@ -94,7 +95,7 @@ class CoreTestCase(BaseTestCase): raise error return result - def tearDown(self): # NOQA + def tear_down(self): def on_shutdown(result): del self.rpcserver