是否期望浮点值不等于第二个值?
例如EXPECT_FLOAT_EQ(val1,val2(的相反
我认为GTest没有这个功能,他们在文档中解释道
有些浮点运算很有用,但并不常用。为了避免新宏的激增,我们将它们作为谓词格式函数提供,可用于谓词断言宏(例如EXPECT_PRED_FORMAT2等(。
您可以按照@idclev 463035818的建议定义一个谓词,并将其传递到EXPECT_PRED_FORMAT2(pred, val1, val2)
中。谓词必须符合签名:
testing::AssertionResult pred(const char* expr1, const char* expr2,
double val1, double val2);
其中expr1
&expr2
是将在断言消息中使用的浮点参数的字符串表示。
您可以使用Google Mock的浮点匹配器。它们可以很容易地组合成更复杂的断言:
EXPECT_THAT(val1, Not(DoubleEq(val2)))