From: Florent Xicluna Date: Tue, 23 Mar 2010 14:36:45 +0000 (+0000) Subject: Silence test_subprocess. X-Git-Tag: v2.7b1~237 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fc4d6d77630384ae8ea85deef59ecdda613fdfc1;p=python Silence test_subprocess. --- diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py index dc57c46b45..e0744d270b 100644 --- a/Lib/test/test_subprocess.py +++ b/Lib/test/test_subprocess.py @@ -33,7 +33,7 @@ except AttributeError: return os.open(fname, os.O_RDWR|os.O_CREAT), fname -class ProcessTestCase(unittest.TestCase): +class BaseTestCase(unittest.TestCase): def setUp(self): # Try to minimize the number of children we have so this test # doesn't crash on some buildbots (Alphas in particular). @@ -52,6 +52,9 @@ class ProcessTestCase(unittest.TestCase): actual = re.sub(r"\[\d+ refs\]\r?\n?$", "", stderr) self.assertEqual(actual, expected, msg) + +class ProcessTestCase(BaseTestCase): + def test_call_seq(self): # call() function with sequence argument rc = subprocess.call([sys.executable, "-c", @@ -559,17 +562,7 @@ class _SuppressCoreFiles(object): @unittest.skipIf(mswindows, "POSIX specific tests") -class POSIXProcessTestCase(unittest.TestCase): - def setUp(self): - # Try to minimize the number of children we have so this test - # doesn't crash on some buildbots (Alphas in particular). - test_support.reap_children() - - def tearDown(self): - for inst in subprocess._active: - inst.wait() - subprocess._cleanup() - self.assertFalse(subprocess._active, "subprocess._active not empty") +class POSIXProcessTestCase(BaseTestCase): def test_exceptions(self): # caught & re-raised exceptions @@ -654,7 +647,7 @@ class POSIXProcessTestCase(unittest.TestCase): # Do not inherit file handles from the parent. # It should fix failures on some platforms. p = subprocess.Popen([sys.executable, "-c", "input()"], close_fds=True, - stdin=subprocess.PIPE) + stdin=subprocess.PIPE, stderr=subprocess.PIPE) # Let the process initialize (Issue #3137) time.sleep(0.1) @@ -675,7 +668,12 @@ class POSIXProcessTestCase(unittest.TestCase): def test_send_signal(self): p = self._kill_process('send_signal', signal.SIGINT) + _, stderr = p.communicate() self.assertNotEqual(p.wait(), 0) + self.assertStderrEqual(stderr, + "Traceback (most recent call last):\n" + " File \"\", line 1, in \n" + "KeyboardInterrupt\n") def test_kill(self): p = self._kill_process('kill') @@ -687,17 +685,7 @@ class POSIXProcessTestCase(unittest.TestCase): @unittest.skipUnless(mswindows, "Windows specific tests") -class Win32ProcessTestCase(unittest.TestCase): - def setUp(self): - # Try to minimize the number of children we have so this test - # doesn't crash on some buildbots (Alphas in particular). - test_support.reap_children() - - def tearDown(self): - for inst in subprocess._active: - inst.wait() - subprocess._cleanup() - self.assertFalse(subprocess._active, "subprocess._active not empty") +class Win32ProcessTestCase(BaseTestCase): def test_startupinfo(self): # startupinfo argument