|
36 | 36 | stdout_list = [b' \n', b'2\n', b'3\n', b' \n'] |
37 | 37 | stderr_list = [b' \n', b'0\n', b'1\n', b' \n'] |
38 | 38 | print_stdin = 'read line; echo "$line"' |
| 39 | +default_timeout = 60 * 60 # 1 hour |
39 | 40 |
|
40 | 41 |
|
41 | 42 | class FakeFileStream(object): |
@@ -88,6 +89,7 @@ def prepare_close( |
88 | 89 | else: |
89 | 90 | popen_obj.configure_mock(stderr=None) |
90 | 91 | popen_obj.attach_mock(mock.Mock(return_value=ec), 'poll') |
| 92 | + popen_obj.attach_mock(mock.Mock(return_value=ec), 'wait') |
91 | 93 | popen_obj.configure_mock(returncode=ec) |
92 | 94 |
|
93 | 95 | popen.return_value = popen_obj |
@@ -140,7 +142,7 @@ def test_001_call( |
140 | 142 | mock.call.log(level=logging.DEBUG, msg=self.gen_cmd_result_log_message(result)), |
141 | 143 | ) |
142 | 144 | self.assertIn( |
143 | | - mock.call.poll(), popen_obj.mock_calls |
| 145 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
144 | 146 | ) |
145 | 147 |
|
146 | 148 | def test_002_call_verbose( |
@@ -198,6 +200,7 @@ def test_004_execute_timeout_fail( |
198 | 200 | ): |
199 | 201 | popen_obj, exp_result = self.prepare_close(popen) |
200 | 202 | popen_obj.poll.return_value = None |
| 203 | + popen_obj.wait.return_value = None |
201 | 204 |
|
202 | 205 | runner = exec_helpers.Subprocess() |
203 | 206 |
|
@@ -263,7 +266,7 @@ def test_005_execute_no_stdout( |
263 | 266 | msg=self.gen_cmd_result_log_message(result)), |
264 | 267 | ]) |
265 | 268 | self.assertIn( |
266 | | - mock.call.poll(), popen_obj.mock_calls |
| 269 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
267 | 270 | ) |
268 | 271 |
|
269 | 272 | def test_006_execute_no_stderr( |
@@ -305,7 +308,7 @@ def test_006_execute_no_stderr( |
305 | 308 | msg=self.gen_cmd_result_log_message(result)), |
306 | 309 | ]) |
307 | 310 | self.assertIn( |
308 | | - mock.call.poll(), popen_obj.mock_calls |
| 311 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
309 | 312 | ) |
310 | 313 |
|
311 | 314 | def test_007_execute_no_stdout_stderr( |
@@ -345,7 +348,7 @@ def test_007_execute_no_stdout_stderr( |
345 | 348 | msg=self.gen_cmd_result_log_message(result)), |
346 | 349 | ]) |
347 | 350 | self.assertIn( |
348 | | - mock.call.poll(), popen_obj.mock_calls |
| 351 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
349 | 352 | ) |
350 | 353 |
|
351 | 354 | def test_008_execute_mask_global( |
@@ -394,7 +397,7 @@ def test_008_execute_mask_global( |
394 | 397 | ) |
395 | 398 |
|
396 | 399 | self.assertIn( |
397 | | - mock.call.poll(), popen_obj.mock_calls |
| 400 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
398 | 401 | ) |
399 | 402 |
|
400 | 403 | def test_009_execute_mask_local( |
@@ -439,7 +442,7 @@ def test_009_execute_mask_local( |
439 | 442 | mock.call.log(level=logging.DEBUG, msg=self.gen_cmd_result_log_message(result)), |
440 | 443 | ) |
441 | 444 | self.assertIn( |
442 | | - mock.call.poll(), popen_obj.mock_calls |
| 445 | + mock.call.wait(timeout=default_timeout), popen_obj.mock_calls |
443 | 446 | ) |
444 | 447 |
|
445 | 448 | def test_004_check_stdin_str( |
@@ -767,8 +770,9 @@ def test_013_execute_timeout_done( |
767 | 770 |
|
768 | 771 | ): |
769 | 772 | popen_obj, exp_result = self.prepare_close(popen, ec=exec_helpers.ExitCodes.EX_INVALID) |
770 | | - popen_obj.poll.side_effect = [None, exec_helpers.ExitCodes.EX_INVALID] |
| 773 | + popen_obj.poll.return_value = exec_helpers.ExitCodes.EX_INVALID |
771 | 774 | popen_obj.attach_mock(mock.Mock(side_effect=OSError), 'kill') |
| 775 | + popen_obj.wait.return_value = None |
772 | 776 |
|
773 | 777 | runner = exec_helpers.Subprocess() |
774 | 778 |
|
|
0 commit comments