将命令行参数传递给SCons测试

时间:2015-06-03 22:25:43

标签: scons

我有一个测试,称之为sometest,在SCons中注册,可以通过执行来调用:

scons sometest.test

sometest也期望命令行参数,即它查找标志-beHappy,以另一种模式运行。

当我尝试使用:

调用测试时
scons sometest.test -beHappy

我从SCons收到一些警告:

Warning:  ignoring -e option
Warning:  the -W option is not yet implemented

然后继续运行测试而不传递参数。

我试过

scons sometest.test -beHappy
scons 'sometest.test -beHappy'

无济于事。

2 个答案:

答案 0 :(得分:0)

我不使用scons,但是可能值得尝试旧的双连字符, - 。许多shell使用它来禁用选项处理,将选项传递给要处理的底层脚本。

scons sometest.test -- -beHappy

来自bash的手册页:

  
    

A - 表示选项结束并禁用进一步的选项处理。 > - 之后的任何参数都被视为文件名和参数。 - 的参数相当于 - 。

  

查看bash的 man 页面并搜索--以获取更多信息。如果您使用另一个shell,请务必查看该shell的手册页。

希望这有帮助。

答案 1 :(得分:0)

...试

scons sometest.test --beHappy

长度超过一个字符的SCons选项前缀有两个短划线(-)。

知道Scons使用optparse是很有帮助的。

当您输入-beHappy时,scons将其视为等效的-b -e -H -a -p -p -y