如何使用升压单元的升压测试
How can I use Boost Test with Boost Units
我希望它能正确编译:
#include <boost/test/unit_test.hpp>
#include <boost/units/quantity.hpp>
#include <boost/units/systems/angle/degrees.hpp>
using boost::units::quantity;
using boost::units::degree::degrees;
using boost::units::degree::plane_angle;
int main() {
quantity<plane_angle> q1 = 15 * degrees;
BOOST_CHECK_CLOSE(q1, 15 * degrees, 1e-8);
return 0;
}
不幸的是,这会在GCC中产生数百行错误。
我当然可以这样做。
BOOST_CHECK_CLOSE(q1.value(), 15, 1e-8);
但我希望在测试用例中保持单元的明确性,以防其他人决定更改q1
的单元类型。
有什么方法可以保持单元的明确性吗?
一个选项是将相等的值除以并与1:进行比较
BOOST _CHECK_CLOSE(q1/(15*度),1,1e-8);
将boost::units::quantity除以同一类型时,最终得到一个无量纲的量,该量可以隐式转换为两倍。
相关文章:
- 有什么好的方法可以让系统调用代理允许在单元测试中进行模拟
- 在子目录中使用target_sources()命令时用于单元测试(qtest)的项目结构
- VC++本机单元测试,找不到调试符号
- 用于交叉编译和CMake的预处理器宏的单元测试
- C++ 用于单元测试的模板模板
- 提升 1.64 单元测试编译失败
- 单元测试欧拉到四元数实现失败
- 运行 C++ 单元测试时LNK2005链接错误
- 禁用自动捕获 Googletest 单元测试中的C++异常
- 有没有办法在不使用 #ifdef 的情况下不编译发布版本中的单元测试函数体?
- 使用 Google Test 对自定义断言函数进行单元测试
- 如何将我的 CMake 项目配置为运行所有单元测试?
- 在Qt C++单元测试中动态加载QQuickWindow而不是QQuickWidget
- MS 本机单元测试 - 断言::线程失败不起作用
- 如何获取 CMake 单元测试的相对路径?
- 助推.如何在另一个测试单元中运行一个测试组件
- 使用cmake构建google测试单元测试时出现链接器错误
- 为测试单元创建目录 C++ [代码::块]
- 对测试单元使用预处理器指令的相关性
- 使用Jenkins和boost.测试单元测试