aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2018-05-09 22:24:49 +0530
committerNirbheek Chauhan <nirbheek.chauhan@gmail.com>2018-05-10 12:30:47 +0200
commit9565293f16c43056433c797d441eb2a2a0e25a46 (patch)
tree853c6947a81545e751bd78f26f8f20e2c27b009e
parent0dd46358422556d599305c68bd19fe97734ddd9d (diff)
downloadmeson-9565293f16c43056433c797d441eb2a2a0e25a46.zip
meson-9565293f16c43056433c797d441eb2a2a0e25a46.tar.gz
meson-9565293f16c43056433c797d441eb2a2a0e25a46.tar.bz2
test setups: Inherit env when using a test setup
Closes https://github.com/mesonbuild/meson/issues/3525
-rw-r--r--mesonbuild/build.py2
-rwxr-xr-xtest cases/unit/2 testsetups/envcheck.py5
-rw-r--r--test cases/unit/2 testsetups/meson.build3
3 files changed, 9 insertions, 1 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 5d1163b..1750661 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -290,7 +290,7 @@ class EnvironmentVariables:
return value
def get_env(self, full_env):
- env = {}
+ env = full_env.copy()
for method, name, values, kwargs in self.envvars:
env[name] = method(full_env, name, values, kwargs)
return env
diff --git a/test cases/unit/2 testsetups/envcheck.py b/test cases/unit/2 testsetups/envcheck.py
new file mode 100755
index 0000000..af39c4e
--- /dev/null
+++ b/test cases/unit/2 testsetups/envcheck.py
@@ -0,0 +1,5 @@
+#!/usr/bin/env python3
+
+import os
+
+assert('PATH' in os.environ)
diff --git a/test cases/unit/2 testsetups/meson.build b/test cases/unit/2 testsetups/meson.build
index 58b099d..8343856 100644
--- a/test cases/unit/2 testsetups/meson.build
+++ b/test cases/unit/2 testsetups/meson.build
@@ -14,6 +14,9 @@ add_test_setup('valgrind',
buggy = executable('buggy', 'buggy.c', 'impl.c')
test('Test buggy', buggy)
+envcheck = find_program('envcheck.py')
+test('test-env', envcheck)
+
add_test_setup('empty')
add_test_setup('onlyenv', env : env)
add_test_setup('onlyenv2', env : 'TEST_ENV=1')