From: Frantisek Sumsal Date: Fri, 30 Sep 2022 07:31:47 +0000 (+0200) Subject: test: wait until the unit finishes before checking the log X-Git-Tag: v252-rc1~61 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bb0f817abf5994602d8ef5bd8568ab129a727a96;p=thirdparty%2Fsystemd.git test: wait until the unit finishes before checking the log Otherwise we might read an incomplete log and fail: ``` test_added_after (__main__.ExecutionResumeTest) ... FAIL test_added_before (__main__.ExecutionResumeTest) ... ok test_interleaved (__main__.ExecutionResumeTest) ... ok test_issue_6533 (__main__.ExecutionResumeTest) ... ok test_no_change (__main__.ExecutionResumeTest) ... ok test_removal (__main__.ExecutionResumeTest) ... ok test_swapped (__main__.ExecutionResumeTest) ... ok ====================================================================== FAIL: test_added_after (__main__.ExecutionResumeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/build/./test/test-exec-deserialization.py", line 152, in test_added_after self.check_output(expected_output) File "/build/./test/test-exec-deserialization.py", line 107, in check_output self.assertEqual(output, expected_output) AssertionError: 'foo\n' != 'foo\nbar\n' foo + bar ---------------------------------------------------------------------- Ran 7 tests in 27.470s ``` --- diff --git a/test/test-exec-deserialization.py b/test/test-exec-deserialization.py index eea7ddc8b35..06a7d369f6e 100755 --- a/test/test-exec-deserialization.py +++ b/test/test-exec-deserialization.py @@ -101,6 +101,10 @@ class ExecutionResumeTest(unittest.TestCase): def check_output(self, expected_output): for _ in range(15): + # Wait until the unit finishes so we don't check an incomplete log + if subprocess.call(['systemctl', '-q', 'is-active', self.unit]) == 0: + continue + try: with open(self.output_file, 'r', encoding='utf-8') as log: output = log.read()