diff options
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-x | run_unittests.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/run_unittests.py b/run_unittests.py index e3b7c5c..b85ad8a 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -22,6 +22,7 @@ import os import shutil import sys import unittest +from configparser import ConfigParser from glob import glob from pathlib import PurePath import mesonbuild.compilers @@ -323,6 +324,35 @@ class InternalTests(unittest.TestCase): cmd = ['@OUTPUT@.out', 'ordinary', 'strings'] self.assertRaises(ME, substfunc, cmd, d) + def test_needs_exe_wrapper_override(self): + config = ConfigParser() + config['binaries'] = { + 'c': '\'/usr/bin/gcc\'', + } + config['host_machine'] = { + 'system': '\'linux\'', + 'cpu_family': '\'arm\'', + 'cpu': '\'armv7\'', + 'endian': '\'little\'', + } + + with tempfile.NamedTemporaryFile(mode='w+') as configfile: + config.write(configfile) + configfile.flush() + detected_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper() + + desired_value = not detected_value + config['properties'] = { + 'needs_exe_wrapper': 'true' if desired_value else 'false' + } + + with tempfile.NamedTemporaryFile(mode='w+') as configfile: + config.write(configfile) + configfile.flush() + forced_value = mesonbuild.environment.CrossBuildInfo(configfile.name).need_exe_wrapper() + + self.assertEqual(forced_value, desired_value) + class BasePlatformTests(unittest.TestCase): def setUp(self): |