Ответ 1
Создайте StrictMock
; любой неожиданный вызов метода будет неисправностью.
Я хочу протестировать в случае какого-либо отказа, метод не будет вызван на макет объекта, используя mock. поэтому код будет примерно таким:
auto mocObj = new MockObj;
EXPECT_NO_METHOD_CALL(mocObj); //this is what I'm locking for
auto mainObj = new MainObj(mocObj , ......and other mocks); // here I simulate a fail using the other mock objects, and I want to be sure the no methods are called on the mockObj
Создайте StrictMock
; любой неожиданный вызов метода будет неисправностью.
Нет необходимости явно указывать, что никакие методы не будут вызваны. Если вы установили уровень ведения журнала достаточно высоким, вы должны получить сообщение, если вызывается метод (если ожидания не установлены).
Кроме того, вы можете установить ожидания следующим образом:
EXPECT_CALL( mockObj, Foo(_) ).Times(0);
для всех методов.
Используйте Exactly (0) для всех ваших методов класса.
мощность будет установлена равной нулю, поэтому вы не ожидаете никаких вызовов