aboutsummaryrefslogtreecommitdiff
path: root/run_unittests.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2019-07-08 21:39:26 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2019-07-08 22:57:04 +0300
commit380dcedb862611a6b5f6b48a548f1b83366efd93 (patch)
treeb8b7d5d852181cd14201753068731a8820ba66ee /run_unittests.py
parentb9a771fef8d45a0c35a3888b1a4983275107aa00 (diff)
downloadmeson-380dcedb862611a6b5f6b48a548f1b83366efd93.zip
meson-380dcedb862611a6b5f6b48a548f1b83366efd93.tar.gz
meson-380dcedb862611a6b5f6b48a548f1b83366efd93.tar.bz2
Hack envvar override when running tests in-process.
Diffstat (limited to 'run_unittests.py')
-rwxr-xr-xrun_unittests.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/run_unittests.py b/run_unittests.py
index ff72e13..214def1 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -1315,8 +1315,14 @@ class BasePlatformTests(unittest.TestCase):
self._run(self.test_command, workdir=self.builddir, override_envvars=override_envvars)
else:
if override_envvars is not None:
- raise RuntimeError('Can not combine inprocess and override_envvars.')
- run_mtest_inprocess(['-C', self.builddir])
+ old_envvars = os.environ.copy()
+ os.environ.update(override_envvars)
+ try:
+ run_mtest_inprocess(['-C', self.builddir])
+ finally:
+ if override_envvars is not None:
+ os.environ.clear()
+ os.environ.update(old_envvars)
def install(self, *, use_destdir=True, override_envvars=None):
if self.backend is not Backend.ninja: