aboutsummaryrefslogtreecommitdiff
path: root/test cases
diff options
context:
space:
mode:
authorNomura <nomura.rh@gmail.com>2023-10-02 15:28:58 +0200
committerDylan Baker <dylan@pnwbakers.com>2023-10-05 09:59:43 -0700
commit3cac6ea54572214d40234042f59de85618b0c131 (patch)
tree4c1c7a8f7946371df46bd611b91abed3b6b5d6fb /test cases
parent03a0d3ddfb092ceb48f1a30fdf5e4b6af2890235 (diff)
downloadmeson-3cac6ea54572214d40234042f59de85618b0c131.zip
meson-3cac6ea54572214d40234042f59de85618b0c131.tar.gz
meson-3cac6ea54572214d40234042f59de85618b0c131.tar.bz2
Add env kwarg in generator.process()
Diffstat (limited to 'test cases')
-rw-r--r--test cases/common/272 env in generator.process/generate_main.py11
-rw-r--r--test cases/common/272 env in generator.process/main.template3
-rw-r--r--test cases/common/272 env in generator.process/meson.build21
3 files changed, 35 insertions, 0 deletions
diff --git a/test cases/common/272 env in generator.process/generate_main.py b/test cases/common/272 env in generator.process/generate_main.py
new file mode 100644
index 0000000..993c5ac
--- /dev/null
+++ b/test cases/common/272 env in generator.process/generate_main.py
@@ -0,0 +1,11 @@
+#!/usr/bin/env python3
+import os
+import sys
+
+ENV_VAR_VALUE = os.environ.get('ENV_VAR_VALUE')
+assert ENV_VAR_VALUE is not None
+
+with open(sys.argv[1], 'r') as infile, \
+ open(sys.argv[2], 'w') as outfile:
+
+ outfile.write(infile.read().replace('ENV_VAR_VALUE', ENV_VAR_VALUE))
diff --git a/test cases/common/272 env in generator.process/main.template b/test cases/common/272 env in generator.process/main.template
new file mode 100644
index 0000000..3c3340e
--- /dev/null
+++ b/test cases/common/272 env in generator.process/main.template
@@ -0,0 +1,3 @@
+int main(void) {
+ return ENV_VAR_VALUE;
+} \ No newline at end of file
diff --git a/test cases/common/272 env in generator.process/meson.build b/test cases/common/272 env in generator.process/meson.build
new file mode 100644
index 0000000..5d74040
--- /dev/null
+++ b/test cases/common/272 env in generator.process/meson.build
@@ -0,0 +1,21 @@
+project('test_env_in_generator_process', 'c')
+
+generate_main_py = find_program('generate_main.py')
+
+main_generator = generator(generate_main_py,
+ arguments: ['@INPUT@', '@OUTPUT@'],
+ output: '@BASENAME@' + '.c'
+)
+
+main_template = files('main.template')
+
+# With explicit values
+my_executable = executable('myexecutable', main_generator.process(main_template, env: {'ENV_VAR_VALUE': '0'}))
+test('explicit_value', my_executable)
+
+# With env object
+env = environment()
+env.set('ENV_VAR_VALUE', '0')
+
+my_executable2 = executable('myexecutable2', main_generator.process(main_template, env: env))
+test('env_object', my_executable2)