gpt4 book ai didi

googletest - gmock:测试两个浮点向量

转载 作者:行者123 更新时间:2023-12-04 12:43:37 26 4
gpt4 key购买 nike

我正在尝试为向量编写测试。
对于 STL 容器,我尝试过:

EXPECT_THAT(float_vec1, ElementsAreArray(float_vec2));

但是我需要插入一个边距。

有没有 ElementsAreArray相当于 FloatNear(a_float, max_abs_error) ?

最佳答案

是的,我用过 Pointwise容器匹配器,您可以提供匹配器和预期容器(任何 STL 容器,并且与非动态分配的 c 样式数组兼容)。

EXPECT_THAT(float_vec1, Pointwise(matcher, float_vec2))

对于 匹配器您可以使用 FloatEq()它使用基于 ULP 的浮点比较。
EXPECT_THAT(float_vec1, Pointwise(FloatEq(), float_vec2))

但是,我发现它更易于使用 FloatNear(float max_abs_error)只是为了像你想要的那样定义我自己的浮点错误。
float ferr = 1e-5;
EXPECT_THAT(float_vec1,
Pointwise(FloatNear(ferr), float_vec2));

关于googletest - gmock:测试两个浮点向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50579012/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com