( - , ..). , MyClass *, makeCall :
ACTION(MakeCall)
{
arg0->makeCall();
}
TEST(...)
{
SchedulerMock mock;
EXPECT_CALL(mock, addEvent(_))
.WillOnce(MakeCall());
...
}
mock.addEvent(my_class_ptr), makeCall MyClass *.
, , , . , MyClass::makeCall int, , , :
class MyClass
{
void makeCall(int);
};
ACTION_P(MakeCall, value)
{
arg0->makeCall(value);
}
TEST(...)
{
const int FIRST_VAL = 10;
const int SECOND_VAL = 20;
MyClass my_class_obj;
SchedulerMock mock;
EXPECT_CALL(mock, addEvent(_))
.WillOnce(MakeCall(FIRST_VAL))
.WillOnce(MakeCall(SECOND_VAL));
...
}
. Google:
Google Mock Cheat Sheet -
Google Mock Cookbook -