aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>2021-02-01 11:50:41 +0300
committerKevin Wolf <kwolf@redhat.com>2021-02-02 17:05:38 +0100
commit3ae50942f161e2e8fa6ecd69a9c17b681d419905 (patch)
tree553fd9186f87317ad6145c0447d2a8095cd19507
parentca502ca60dab85b11a7fad5978ab3de94c296fb6 (diff)
downloadqemu-3ae50942f161e2e8fa6ecd69a9c17b681d419905.zip
qemu-3ae50942f161e2e8fa6ecd69a9c17b681d419905.tar.gz
qemu-3ae50942f161e2e8fa6ecd69a9c17b681d419905.tar.bz2
iotests: check: return 1 on failure
We should indicate failure by exit code, not only output. Reported-by: Peter Maydell Fixes: f203080bbd9f9e5b31041b1f2afcd6040c5aaec5 Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-Id: <20210201085041.3079-1-vsementsov@virtuozzo.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rwxr-xr-xtests/qemu-iotests/check5
-rw-r--r--tests/qemu-iotests/testrunner.py4
2 files changed, 7 insertions, 2 deletions
diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index 5190dee..d1c87ce 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -140,4 +140,7 @@ if __name__ == '__main__':
else:
with TestRunner(env, makecheck=args.makecheck,
color=args.color) as tr:
- tr.run_tests([os.path.join(env.source_iotests, t) for t in tests])
+ paths = [os.path.join(env.source_iotests, t) for t in tests]
+ ok = tr.run_tests(paths)
+ if not ok:
+ sys.exit(1)
diff --git a/tests/qemu-iotests/testrunner.py b/tests/qemu-iotests/testrunner.py
index 24b3fba..25754e9 100644
--- a/tests/qemu-iotests/testrunner.py
+++ b/tests/qemu-iotests/testrunner.py
@@ -318,7 +318,7 @@ class TestRunner(ContextManager['TestRunner']):
return res
- def run_tests(self, tests: List[str]) -> None:
+ def run_tests(self, tests: List[str]) -> bool:
n_run = 0
failed = []
notrun = []
@@ -363,5 +363,7 @@ class TestRunner(ContextManager['TestRunner']):
if failed:
print('Failures:', ' '.join(failed))
print(f'Failed {len(failed)} of {n_run} iotests')
+ return False
else:
print(f'Passed all {n_run} iotests')
+ return True