diff options
author | Andrew Morrow <acm@mongodb.com> | 2021-05-13 17:22:51 (GMT) |
---|---|---|
committer | Andrew Morrow <acm@mongodb.com> | 2021-05-13 17:50:17 (GMT) |
commit | 2909e28730ab72930f923b55f860d554f3b5e216 (patch) | |
tree | dee019fe700890d091dbd79d96f455dde8a6a0d3 | |
parent | cf62ab0371a135d137e5dfd9a3c3e5ab2d0168a1 (diff) | |
download | SCons-2909e28730ab72930f923b55f860d554f3b5e216.zip SCons-2909e28730ab72930f923b55f860d554f3b5e216.tar.gz SCons-2909e28730ab72930f923b55f860d554f3b5e216.tar.bz2 |
3790 - Add a test which fails
-rw-r--r-- | test/CPPDEFINES/basic.py | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/test/CPPDEFINES/basic.py b/test/CPPDEFINES/basic.py index d0019a1..176f543 100644 --- a/test/CPPDEFINES/basic.py +++ b/test/CPPDEFINES/basic.py @@ -39,13 +39,24 @@ test_list = [ ['x', ['y', 123], 'z', ('int', '$INTEGER')], { 'c' : 3, 'b': None, 'a' : 1 }, "${TESTDEFS}", + "${GEN}", ] + +def generator(target, source, env, for_signature): + if target and source: + return '_'.join([str(target[0]), 'GENERATED', str(source[0])]) + return 'TARGET_AND_SOURCE_ARE_MISSING' + for i in test_list: - env = Environment(CPPDEFPREFIX='-D', CPPDEFSUFFIX='', INTEGER=0, TESTDEFS=["FOO", "BAR=1"]) - print(env.Clone(CPPDEFINES=i).subst('$_CPPDEFFLAGS')) + env = Environment(CPPDEFPREFIX='-D', CPPDEFSUFFIX='', INTEGER=0, TESTDEFS=["FOO", "BAR=1"], GEN=generator) + ttt = env.Entry('#ttt') + sss = env.Entry('#sss') + print(env.Clone(CPPDEFINES=i).subst('$_CPPDEFFLAGS', target=[ttt], source=[sss])) for i in test_list: - env = Environment(CPPDEFPREFIX='|', CPPDEFSUFFIX='|', INTEGER=1, TESTDEFS=["FOO", "BAR=1"]) - print(env.Clone(CPPDEFINES=i).subst('$_CPPDEFFLAGS')) + env = Environment(CPPDEFPREFIX='|', CPPDEFSUFFIX='|', INTEGER=1, TESTDEFS=["FOO", "BAR=1"], GEN=generator) + ttt = env.Entry('#ttt') + sss = env.Entry('#sss') + print(env.Clone(CPPDEFINES=i).subst('$_CPPDEFFLAGS', target=[ttt], source=[sss])) """) expect = test.wrap_stdout(build_str="scons: `.' is up to date.\n", @@ -55,11 +66,13 @@ expect = test.wrap_stdout(build_str="scons: `.' is up to date.\n", -Dx -Dy=123 -Dz -Dint=0 -Da=1 -Db -Dc=3 -DFOO -DBAR=1 +-Dttt_GENERATED_sss |xyz| |x| |y| |z| |x| |y=123| |z| |int=1| |a=1| |b| |c=3| |FOO| |BAR=1| +|ttt_GENERATED_sss| """) test.run(arguments = '.', stdout=expect) |