在单个MOCK_EXPECT中调用返回和调用操作

时间:2013-10-02 04:52:06

标签: c++ turtle-mock

我可以在单个MOCK_EXPECT调用中同时调用返回和调用操作吗?像,

MOCK_EXPECT(a.method).calls(functor).returns(value);

由于

1 个答案:

答案 0 :(得分:2)

仿函数的返回值是将返回给调用者的值。因此,通过.returns提供额外的显式返回值毫无意义。

但是,您仍然可以使用包装器仿函数在expect调用中指定返回值(而不是在仿函数中):

MOCK_EXPECT(a.method).calls([]() -> int {
    functor(); /* return value of functor is discarded */
    return 42; /* 42 is returned instead */
});