From: Vinay Sajip Date: Mon, 8 Feb 2010 21:18:15 +0000 (+0000) Subject: logging: gingerly re-enabling skipped tests after improving thread sync code in confi... X-Git-Tag: v2.7a4~215 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cfc43e9435e4f7428f6dfb163ab8f3846dd3af28;p=python logging: gingerly re-enabling skipped tests after improving thread sync code in configurator. --- diff --git a/Lib/logging/config.py b/Lib/logging/config.py index fdf4397aa4..1438388441 100644 --- a/Lib/logging/config.py +++ b/Lib/logging/config.py @@ -803,6 +803,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): raise except: traceback.print_exc() + if self.server.ready: + self.server.ready.set() except socket.error, e: if not isinstance(e.args, tuple): raise @@ -819,12 +821,13 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): allow_reuse_address = 1 def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT, - handler=None): + handler=None, ready=None): ThreadingTCPServer.__init__(self, (host, port), handler) logging._acquireLock() self.abort = 0 logging._releaseLock() self.timeout = 1 + self.ready = ready def serve_until_stopped(self): import select @@ -849,7 +852,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): self.ready = threading.Event() def run(self): - server = self.rcvr(port=self.port, handler=self.hdlr) + server = self.rcvr(port=self.port, handler=self.hdlr, + ready=self.ready) self.ready.set() global _listener logging._acquireLock() diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 77db96a2fc..dcd75ce1ee 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -1594,7 +1594,6 @@ class ConfigDictTest(BaseTest): logging.config.stopListening() t.join(2.0) - #@unittest.skip("See issue #7857") def test_listen_config_10_ok(self): with captured_stdout() as output: self.setup_via_listener(json.dumps(self.config10)) @@ -1614,7 +1613,6 @@ class ConfigDictTest(BaseTest): ('ERROR', '4'), ], stream=output) - @unittest.skip("See issue #7857") def test_listen_config_1_ok(self): with captured_stdout() as output: self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1))