aboutsummaryrefslogtreecommitdiff
path: root/run_cross_test.py
diff options
context:
space:
mode:
authorJon Turney <jon.turney@dronecode.org.uk>2020-01-23 18:21:54 +0000
committerJon Turney <jon.turney@dronecode.org.uk>2020-01-28 21:53:52 +0000
commitd4c7ff173a19d2180c539e27f1b49a53668e5ad7 (patch)
tree08b9ab146ea49197081b7fbbb0893c4a04bf8f16 /run_cross_test.py
parentea805d42877125f43aeb68e771fda2d1e2e5cc0a (diff)
downloadmeson-d4c7ff173a19d2180c539e27f1b49a53668e5ad7.zip
meson-d4c7ff173a19d2180c539e27f1b49a53668e5ad7.tar.gz
meson-d4c7ff173a19d2180c539e27f1b49a53668e5ad7.tar.bz2
Make run_cross_test.py just a wrapper around run_project_tests.py
This makes the platform_fix_name() machinery for toolchains which don't have gcc-like filename conventions available to cross testing.
Diffstat (limited to 'run_cross_test.py')
-rwxr-xr-xrun_cross_test.py34
1 files changed, 8 insertions, 26 deletions
diff --git a/run_cross_test.py b/run_cross_test.py
index 8d18123..abbfdac 100755
--- a/run_cross_test.py
+++ b/run_cross_test.py
@@ -15,43 +15,25 @@
# limitations under the License.
'''Runs the basic test suite through a cross compiler.
-Not part of the main test suite because of two reasons:
-1) setup of the cross build is platform specific
-2) it can be slow (e.g. when invoking test apps via wine)
+This is now just a wrapper around run_project_tests.py with specific arguments
+'''
-Eventually migrate to something fancier.'''
-
-import sys
-import os
-from pathlib import Path
import argparse
-
-from run_project_tests import gather_tests, run_tests, StopException, setup_commands
-from run_project_tests import failing_logs
+import subprocess
+import sys
+from mesonbuild import mesonlib
def runtests(cross_file, failfast):
- commontests = [('common', gather_tests(Path('test cases', 'common')), False)]
- try:
- (passing_tests, failing_tests, skipped_tests) = \
- run_tests(commontests, 'meson-cross-test-run', failfast, ['--cross-file', cross_file])
- except StopException:
- pass
- print('\nTotal passed cross tests:', passing_tests)
- print('Total failed cross tests:', failing_tests)
- print('Total skipped cross tests:', skipped_tests)
- if failing_tests > 0 and ('CI' in os.environ):
- print('\nMesonlogs of failing tests\n')
- for log in failing_logs:
- print(log, '\n')
- return failing_tests
+ tests = ['--only', 'common']
+ cmd = mesonlib.python_command + ['run_project_tests.py', '--backend', 'ninja'] + (['--failfast'] if failfast else []) + tests + ['--cross-file', cross_file]
+ return subprocess.call(cmd)
def main():
parser = argparse.ArgumentParser()
parser.add_argument('--failfast', action='store_true')
parser.add_argument('cross_file')
options = parser.parse_args()
- setup_commands('ninja')
return runtests(options.cross_file, options.failfast)
if __name__ == '__main__':