Probé un par de enfoques, pero no estoy seguro de si es posible simular una función anidada en Jest. Leí los documentos oficiales donde usan axios, pero estoy tratando de simular una función que se importa, no un módulo.
por ejemplo, tengo una función A, y dentro de AI llamo B. Quiero simular B para que devuelva verdadero una vez y luego falso una vez.
B es una función que importé que escribí en otro archivo y estoy probando A.
hasta ahora he intentado importar la función B en mi archivo de prueba y crear una simulación, pero no creo que esté funcionando como pensé que lo haría.
por ejemplo he probado esto
import { b } from "../util" jest.mock("b", () => jest.fn().mockReturnValue(true));y luego mi archivo probado sería
function a() => { while b() { do something; } }¿Debo volver a escribir mi prueba o función que estoy probando?
No estoy seguro de qué tipo de resultados está obteniendo, pero para burlarse de b podría hacer:
jest.mock("../util", () => ({ b:jest.fn().mockReturnValueOnce(true).mockReturnValueOnce(false), }));