用于cxxtestgen命令的scons工具
scons-tool-cxxtestgen的Python项目详细描述
SCons用于cxxtestgen命令的工具。
安装
为您的项目安装此工具的方法很少。
来自pypi
如果在virtualenv下构建项目,则此方法可能更可取。到 从pypi添加cxtestgen工具,键入(在wirtualenv中):
pip install scons-tool-loader scons-tool-cxxtestgen
或者,如果您的项目使用pipenv:
pipenv install --dev scons-tool-loader scons-tool-cxxtestgen
或者,您可以将其添加到您的Pipfile
[dev-packages] scons-tool-loader = "*" scons-tool-cxxtestgen = "*"
该工具将作为命名空间包^{tt2}安装$ 在项目的虚拟环境中。您可以进一步使用scons-tool-loader 加载工具。
作为git子模块
创建新的git存储库:
mkdir /tmp/prj &&cd /tmp/prj touch README.rst git init
将scons-tool-cxxtestgen作为子模块添加:
git submodule add git://github.com/ptomulik/scons-tool-cxxtestgen.git site_scons/site_tools/cxxtestgen
对于python 2.x,在site_tools目录中创建__init__.py:
touch site_scons/site_tools/__init__.py
这将允许直接导入site_tools.cxxtestgen(这可能是 其他工具要求)。
用法示例
创建简单的测试文件
// MyTestSuite1.t.h #include<cxxtest/TestSuite.h>classMyTestSuite1:publicCxxTest::TestSuite{public:voidtestAddition(void){TS_ASSERT(1+1>1);TS_ASSERT_EQUALS(1+1,2);}};
创建简单的sconstruct文件
# SConstruct# TODO: uncomment following lines if the tool is installed via pip/pipenv# import sconstool.loader# sconstool.loader.extend_toolpath(transparent=True)env=Environment(tools=['cxxtestgen'])env.CxxTestGen('MyTestSuite')
试试看:
scons
建筑商
- CxxTestGen([target], sources, **kw)-调用cxxtestgetn ...。
- CxxTestGenPart([target], sources, **kw)-调用cxxtestgen --part ..., 这用于生成*.t.cpp文件,这些文件定义测试,但没有 main()。
- CxxTestGenRoot(target, **kw)-调用cxxtestgen --root ...,这个 pseudo builder生成根文件*.t.cpp,该文件提供 main()函数,应与CxxTestGenPart一起使用。
使用的构造变量
以下scons构造变量可用于自定义 cxtestgen工具。
Name | Description |
---|---|
CXXTESTBINPATH | search path for cxxtest executables/scripts; by default it includes the following locations:
in that order. |
CXXTESTGEN | path to cxxtestgen python script; by default it will contain a result of search, first in ^{tt20}$, then in SCons ^{tt21}$. |
CXXTESTGENFLAGS | additional flags to be passed to cxxtestgen. |
CXXTESTGENPYTHON | python interpreter to be used to run cxxtestgen; by default it is being chosen automatically; python3 is preferred, but if the cxxtestgen seems to not support it, python2 is picked up; if neither python3 nor python2 are available in standard SCons search PATH, ^{tt22}$ (the interpreter running SCons script) is used. |
CXXTESTGENRUNNER | name of the listener class for cxxtestgen (used as ^{tt23}$); defaults to ^{tt24}$. |
CXXTESTGENSUFFIX | suffix for files produced by cxxtestgen (.t.cpp). |
CXXTESTGENSRCSUFFIX | suffix of cxxtestgen’s input files (.t.h). |
CXXTESTINSTALLDIR | root directory of custom cxxtest installation; defaults to ^{tt25}$, where ^{tt26}$ is the project’s top-level directory. |
许可证
版权所有(c)2018 Pawel Tomulik<;ptomulik@meil.pw.edu.pl>;
兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:
上述版权公告及本许可公告须包括在 软件的拷贝或大部分。
本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与本软件有关,或使用或与本软件的其他交易有关。 软件