From: Brian Quinlan Date: Fri, 24 Dec 2010 23:10:41 +0000 (+0000) Subject: Better reporting of test failures on Windows. X-Git-Tag: v3.2rc1~343 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a3015a6a827ad852bf1875e6e40d64063d895cd4;p=python Better reporting of test failures on Windows. --- diff --git a/Lib/test/test_concurrent_futures.py b/Lib/test/test_concurrent_futures.py index e4e38ec93f..7baf0a275a 100644 --- a/Lib/test/test_concurrent_futures.py +++ b/Lib/test/test_concurrent_futures.py @@ -75,15 +75,27 @@ class Call(object): def _wait_on_event(self, handle): if sys.platform.startswith('win'): + # WaitForSingleObject returns 0 if handle is signaled. r = ctypes.windll.kernel32.WaitForSingleObject(handle, 60 * 1000) - assert r == 0 + if r != 0: + message = ( + 'WaitForSingleObject({}, ...) failed with {}, ' + 'GetLastError() = {}'.format( + handle, r, ctypes.GetLastError())) + logging.critical(message) + assert False, message else: self.CALL_LOCKS[handle].wait() def _signal_event(self, handle): if sys.platform.startswith('win'): - r = ctypes.windll.kernel32.SetEvent(handle) - assert r != 0 + r = ctypes.windll.kernel32.SetEvent(handle) # Returns 0 on failure. + if r == 0: + message = ( + 'SetEvent({}) failed with {}, GetLastError() = {}'.format( + handle, r, ctypes.GetLastError())) + logging.critical(message) + assert False, message else: self.CALL_LOCKS[handle].set()