From 4f42b4f7411dd4ca4e670a47be1dfe7f81d02e05 Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Sat, 28 Dec 2019 00:22:13 +0100 Subject: Search testcases and execute automatically --- bin/vyos-smoketest | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/bin/vyos-smoketest b/bin/vyos-smoketest index 1ae00d5b8..3c54b8780 100755 --- a/bin/vyos-smoketest +++ b/bin/vyos-smoketest @@ -1,19 +1,38 @@ #!/usr/bin/env python3 +# +# Copyright (C) 2019-2020 VyOS maintainers and contributors +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 or later as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . import os import sys -test_dir = '/usr/libexec/vyos/tests/smoke' - -tests = ['test_module_load.py'] +from stat import * success = True +for root, dirs, files in os.walk('/usr/libexec/vyos/tests/smoke'): + for name in files: + test_file = os.path.join(root, name) + mode = os.stat(test_file).st_mode + + if mode & S_IXOTH: + try: + os.system(test_file) + except Exception as e: + print('Testcase "{}" raised an exception'.format(test_file)) + success = False -for t in tests: - try: - os.system(os.path.join(test_dir, t)) - except Exception as e: - success = False +if success: + sys.exit(0) -if not success: - sys.exit(1) +sys.exit(1) -- cgit v1.2.3