From: Ronald Oussoren Date: Fri, 23 Jul 2010 10:35:20 +0000 (+0000) Subject: Merged revisions 83067 via svnmerge from X-Git-Tag: v3.1.3rc1~476 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d7eb3a8d734f9e5269f3a9bc4d53d967fa1908bb;p=python Merged revisions 83067 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r83067 | ronald.oussoren | 2010-07-23 10:50:05 +0100 (Fri, 23 Jul 2010) | 8 lines Workaround for issue 4047: in some configurations of the Crash Reporter on OSX test_subprocess will trigger the reporter. This patch prints a warning when the Crash Reporter will get triggered intentionally, which should avoid confusing people. ........ --- diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py index a27ef6341e..5cdbe2dd7e 100644 --- a/Lib/test/test_subprocess.py +++ b/Lib/test/test_subprocess.py @@ -568,6 +568,21 @@ class ProcessTestCase(unittest.TestCase): """Try to prevent core files from being created. Returns previous ulimit if successful, else None. """ + if sys.platform == 'darwin': + # Check if the 'Crash Reporter' on OSX was configured + # in 'Developer' mode and warn that it will get triggered + # when it is. + # + # This assumes that this context manager is used in tests + # that might trigger the next manager. + value = subprocess.Popen(['/usr/bin/defaults', 'read', + 'com.apple.CrashReporter', 'DialogType'], + stdout=subprocess.PIPE).communicate()[0] + if value.strip() == b'developer': + print("this tests triggers the Crash Reporter, " + "that is intentional", end='') + sys.stdout.flush() + try: import resource old_limit = resource.getrlimit(resource.RLIMIT_CORE) @@ -576,6 +591,8 @@ class ProcessTestCase(unittest.TestCase): except (ImportError, ValueError, resource.error): return None + + def _unsuppress_core_files(self, old_limit): """Return core file behavior to default.""" if old_limit is None: