Necesito esta solución para un proyecto educativo. Esta prueba de unidad debe verificar una salida de consola esperada de la función:
it('should log into the console "Victoria lifting anchor up" and "Victoria is moving"', () => { const consoleSpy = jest.spyOn(console, 'log'); victoria.move(); expect(consoleSpy).toHaveBeenCalledWith(?); });
El problema es que la función victoria.move() ejecuta dos registros de consola y quiero verificarlos en una prueba unitaria. La prueba funciona perfectamente con una salida, pero no sé qué notación debería ser para probar dos salidas. Lucho por encontrar la sintaxis en Internet.
Puede usar la propiedad .calls
de consoleSpy
. Hay un ejemplo en la documentación oficial "usando una función simulada" . En tu caso se podría hacer así
expect(mockCallback.mock.calls[0][0]).toBe('your value'); // first call, first argument expect(mockCallback.mock.calls[1][0]).toBe('your value'); // second call, first argument