test speed primer juego google español color c++ googletest googlemock

c++ - speed - Google Mock: ¿Cómo puedo "ESPERAR" que ningún método será llamado en un simulacro



google test speed (3)

Quiero probar que en caso de fallar, no se llamará a ningún método en un objeto simulado, utilizando google simulacro. para que el código sea algo como:

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


Crear un StrictMock ; Cualquier llamada de método inesperada será un fracaso.


No hay necesidad de decir explícitamente que no se llamará a ningún método. Si establece el nivel de registro lo suficientemente alto, debería recibir un mensaje si se llama a un método (si no se establece ninguna expectativa).

Aparte de eso, puedes establecer expectativas como esta:

EXPECT_CALL( mockObj, Foo(_) ).Times(0);

en todos los metodos


Usa Exactamente (0) para todos tus métodos de clase.

la cardinalidad se establecerá en cero, por lo que no se esperan llamadas