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

This commit is contained in:
Vinay Sajip 2010-02-08 21:18:15 +00:00
parent dde96e6dd6
commit cfc43e9435
2 changed files with 6 additions and 4 deletions

View File

@ -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()

View File

@ -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))