我有一些期望,例如EXPECT_CALL (...)
EXPECT_CALL(t1, foo()).Times(1);
我想创建对面。 我希望某个功能不会被执行。
我应该使用什么方法?
像EXPECT_NOT_CALL (...)
?
答案 0 :(得分:7)
在GTest中,类似于EXPECT_NOT_CALL
的东西不存在,但是有几个选项可以接收这种行为:
1.创建StrictMock。在StrictMock
任何意外调用导致失败。
2.使用.Times(0)
:
EXPECT_CALL(t1, foo()).Times(0);
在此选项中,您使用计数机制,但它会检查值是否为0
。(因此任何调用都会导致失败...)
3.使用方法2
并创建Macro
:
#define EXPECT_NOT_CALL(a,b) EXPECT_CALL(a, b).Times(0);