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.
pull/6536/head
Jon Turney 5 years ago
parent ea805d4287
commit d4c7ff173a
No known key found for this signature in database
GPG Key ID: C7C86F0370285C81
  1. 34
      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__':

Loading…
Cancel
Save