diff options
author | Steven Knight <knight@baldmt.com> | 2001-09-21 01:30:38 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2001-09-21 01:30:38 (GMT) |
commit | c8bbea81460524f6469fa4b6afc2be5a6f338edc (patch) | |
tree | aa6a337d270384c8e12577542615ae3f3f51dc39 /test/Program.py | |
parent | b6251d39d5f5b187a7455923caeede3b962a6d0e (diff) | |
download | SCons-c8bbea81460524f6469fa4b6afc2be5a6f338edc.zip SCons-c8bbea81460524f6469fa4b6afc2be5a6f338edc.tar.gz SCons-c8bbea81460524f6469fa4b6afc2be5a6f338edc.tar.bz2 |
Add additional tests to provide more examples.
Diffstat (limited to 'test/Program.py')
-rw-r--r-- | test/Program.py | 106 |
1 files changed, 101 insertions, 5 deletions
diff --git a/test/Program.py b/test/Program.py index a2b0e4b..d517808 100644 --- a/test/Program.py +++ b/test/Program.py @@ -4,25 +4,121 @@ __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" import TestSCons +#XXX Future: be able to interpolate + test = TestSCons.TestSCons() test.write('SConstruct', """ env = Environment() -env.Program(target = 'foo', source = 'foo.c') +env.Program(target = 'foo1', source = 'f1.c') +env.Program(target = 'foo2', source = 'f2a.c f2b.c f2c.c') +#XXXenv.Program(target = 'foo3', source = ['f3a.c', 'f3b.c', 'f3c.c']) """) -test.write('foo.c', """ +test.write('f1.c', """ int main(int argc, char *argv[]) { argv[argc++] = "--"; - printf("foo.c\n"); + printf("f1.c\n"); exit (0); } """) -test.run(arguments = 'foo') +test.write('f2a.c', """ +void +f2a(void) +{ + printf("f2a.c\n"); +} +""") + +test.write('f2b.c', """ +void +f2b(void) +{ + printf("f2b.c\n"); +} +""") + +test.write('f2c.c', """ +extern void f2a(void); +extern void f2b(void); +int +main(int argc, char *argv[]) +{ + argv[argc++] = "--"; + f2a(); + f2b(); + printf("f2c.c\n"); + exit (0); +} +""") + +test.write('f3a.c', """ +void +f3a(void) +{ + printf("f3a.c\n"); +} +""") + +test.write('f3b.c', """ +void +f3b(void) +{ + printf("f3b.c\n"); +} +""") + +test.write('f3c.c', """ +extern void f3a(void); +extern void f3b(void); +int +main(int argc, char *argv[]) +{ + argv[argc++] = "--"; + f3a(); + f3b(); + printf("f3c.c\n"); + exit (0); +} +""") + +#XXXtest.run(arguments = '.') +test.run(arguments = 'foo1 foo2') + +test.run(program = test.workpath('foo1'), stdout = "f1.c\n") +test.run(program = test.workpath('foo2'), stdout = "f2a.c\nf2b.c\nf2c.c\n") +#XXXtest.run(program = test.workpath('foo3'), stdout = "f3a.c\nf3b.c\nf3c.c\n") + +#XXXtest.up_to_date(arguments = '.') + +test.write('f1.c', """ +int +main(int argc, char *argv[]) +{ + argv[argc++] = "--"; + printf("f1.c X\n"); + exit (0); +} +""") + +test.write('f3b.c', """ +void +f3b(void) +{ + printf("f3b.c X\n"); +} +""") + +#XXXtest.run(arguments = '.') +test.run(arguments = 'foo1 foo2') + +test.run(program = test.workpath('foo1'), stdout = "f1.c X\n") +test.run(program = test.workpath('foo2'), stdout = "f2a.c\nf2b.c\nf2c.c\n") +#XXXtest.run(program = test.workpath('foo3'), stdout = "f3a.c\nf3b.c X\nf3c.c\n") -test.run(program = test.workpath('foo'), stdout = "foo.c\n") +#XXXtest.up_to_date(arguments = '.') test.pass_test() |