diff options
| author | Steven Knight <knight@baldmt.com> | 2001-11-15 03:52:55 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2001-11-15 03:52:55 (GMT) |
| commit | 9508d219188fcd2ad8eb2d24606d1b9c611e9ed2 (patch) | |
| tree | 880af73f3034f4cd6df91d19e94a96a834305a7e /src/engine/SCons/UtilTests.py | |
| parent | 7f3b3a97f05532ed158371e42edf7b57c0f7b08e (diff) | |
| download | SCons-9508d219188fcd2ad8eb2d24606d1b9c611e9ed2.zip SCons-9508d219188fcd2ad8eb2d24606d1b9c611e9ed2.tar.gz SCons-9508d219188fcd2ad8eb2d24606d1b9c611e9ed2.tar.bz2 | |
LIBS and LIBPATH work, variable substitution changes.
Diffstat (limited to 'src/engine/SCons/UtilTests.py')
| -rw-r--r-- | src/engine/SCons/UtilTests.py | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/src/engine/SCons/UtilTests.py b/src/engine/SCons/UtilTests.py index 59ce344..01d3031 100644 --- a/src/engine/SCons/UtilTests.py +++ b/src/engine/SCons/UtilTests.py @@ -30,7 +30,7 @@ import sys import unittest import SCons.Node import SCons.Node.FS -from SCons.Util import scons_str2nodes, scons_subst, PathList +from SCons.Util import scons_str2nodes, scons_subst, PathList, scons_subst_list class UtilTestCase(unittest.TestCase): @@ -125,10 +125,41 @@ class UtilTestCase(unittest.TestCase): assert newcom == cvt("test foo") newcom = scons_subst("test $xxx", loc, {}) - assert newcom == cvt("test "), newcom + assert newcom == cvt("test"), newcom + def test_subst_list(self): + """Testing the scons_subst_list() method...""" + loc = {} + loc['TARGETS'] = PathList(map(os.path.normpath, [ "./foo/bar.exe", + "/bar/baz with spaces.obj", + "../foo/baz.obj" ])) + loc['TARGET'] = loc['TARGETS'][0] + loc['SOURCES'] = PathList(map(os.path.normpath, [ "./foo/blah with spaces.cpp", + "/bar/ack.cpp", + "../foo/ack.c" ])) + loc['xxx'] = None + loc['NEWLINE'] = 'before\nafter' + + if os.sep == '/': + def cvt(str): + return str + else: + def cvt(str): + return string.replace(str, '/', os.sep) + + cmd_list = scons_subst_list("$TARGETS", loc, {}) + assert cmd_list[0][1] == cvt("/bar/baz with spaces.obj"), cmd_list[0][1] + cmd_list = scons_subst_list("$SOURCES $NEWLINE $TARGETS", loc, {}) + assert len(cmd_list) == 2, cmd_list + assert cmd_list[0][0] == cvt('foo/blah with spaces.cpp'), cmd_list[0][0] + assert cmd_list[1][2] == cvt("/bar/baz with spaces.obj"), cmd_list[1] + cmd_list = scons_subst_list("$SOURCES$NEWLINE", loc, {}) + assert len(cmd_list) == 2, cmd_list + assert cmd_list[1][0] == 'after', cmd_list[1][0] + assert cmd_list[0][2] == cvt('../foo/ack.cbefore'), cmd_list[0][2] + if __name__ == "__main__": suite = unittest.makeSuite(UtilTestCase, 'test_') if not unittest.TextTestRunner().run(suite).wasSuccessful(): |
