Kaydet (Commit) cfc43e94 authored tarafından Vinay Sajip's avatar Vinay Sajip

logging: gingerly re-enabling skipped tests after improving thread sync code in configurator.

üst dde96e6d
...@@ -803,6 +803,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): ...@@ -803,6 +803,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
raise raise
except: except:
traceback.print_exc() traceback.print_exc()
if self.server.ready:
self.server.ready.set()
except socket.error, e: except socket.error, e:
if not isinstance(e.args, tuple): if not isinstance(e.args, tuple):
raise raise
...@@ -819,12 +821,13 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): ...@@ -819,12 +821,13 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
allow_reuse_address = 1 allow_reuse_address = 1
def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT, def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT,
handler=None): handler=None, ready=None):
ThreadingTCPServer.__init__(self, (host, port), handler) ThreadingTCPServer.__init__(self, (host, port), handler)
logging._acquireLock() logging._acquireLock()
self.abort = 0 self.abort = 0
logging._releaseLock() logging._releaseLock()
self.timeout = 1 self.timeout = 1
self.ready = ready
def serve_until_stopped(self): def serve_until_stopped(self):
import select import select
...@@ -849,7 +852,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): ...@@ -849,7 +852,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
self.ready = threading.Event() self.ready = threading.Event()
def run(self): 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() self.ready.set()
global _listener global _listener
logging._acquireLock() logging._acquireLock()
......
...@@ -1594,7 +1594,6 @@ class ConfigDictTest(BaseTest): ...@@ -1594,7 +1594,6 @@ class ConfigDictTest(BaseTest):
logging.config.stopListening() logging.config.stopListening()
t.join(2.0) t.join(2.0)
#@unittest.skip("See issue #7857")
def test_listen_config_10_ok(self): def test_listen_config_10_ok(self):
with captured_stdout() as output: with captured_stdout() as output:
self.setup_via_listener(json.dumps(self.config10)) self.setup_via_listener(json.dumps(self.config10))
...@@ -1614,7 +1613,6 @@ class ConfigDictTest(BaseTest): ...@@ -1614,7 +1613,6 @@ class ConfigDictTest(BaseTest):
('ERROR', '4'), ('ERROR', '4'),
], stream=output) ], stream=output)
@unittest.skip("See issue #7857")
def test_listen_config_1_ok(self): def test_listen_config_1_ok(self):
with captured_stdout() as output: with captured_stdout() as output:
self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1)) self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment