fix the test on windows which has different return codes from killed

children.
This commit is contained in:
Gregory P. Smith 2014-04-23 08:39:02 -07:00
commit e7460ac378
1 changed files with 10 additions and 5 deletions

View File

@ -1077,17 +1077,22 @@ class ProcessTestCase(BaseTestCase):
t = threading.Timer(0.2, kill_proc_timer_thread) t = threading.Timer(0.2, kill_proc_timer_thread)
t.start() t.start()
if mswindows:
expected_errorcode = 1
else:
# Should be -9 because of the proc.kill() from the thread.
expected_errorcode = -9
# Wait for the process to finish; the thread should kill it # Wait for the process to finish; the thread should kill it
# long before it finishes on its own. Supplying a timeout # long before it finishes on its own. Supplying a timeout
# triggers a different code path for better coverage. # triggers a different code path for better coverage.
proc.wait(timeout=20) proc.wait(timeout=20)
# Should be -9 because of the proc.kill() from the thread. self.assertEqual(proc.returncode, expected_errorcode,
self.assertEqual(proc.returncode, -9,
msg="unexpected result in wait from main thread") msg="unexpected result in wait from main thread")
# This should be a no-op with no change in returncode. # This should be a no-op with no change in returncode.
proc.wait() proc.wait()
self.assertEqual(proc.returncode, -9, self.assertEqual(proc.returncode, expected_errorcode,
msg="unexpected result in second main wait.") msg="unexpected result in second main wait.")
t.join() t.join()
@ -1096,8 +1101,8 @@ class ProcessTestCase(BaseTestCase):
# be set by the wrong thread that doesn't actually have it # be set by the wrong thread that doesn't actually have it
# leading to an incorrect value. # leading to an incorrect value.
self.assertEqual([('thread-start-poll-result', None), self.assertEqual([('thread-start-poll-result', None),
('thread-after-kill-and-wait', -9), ('thread-after-kill-and-wait', expected_errorcode),
('thread-after-second-wait', -9)], ('thread-after-second-wait', expected_errorcode)],
results) results)
def test_issue8780(self): def test_issue8780(self):