Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

248
Visualizações
Broma, ¿cómo simular una devolución de llamada importada en la desestructuración de objetos?

Hice las pruebas de la siguiente manera, pero me molesta cómo necesito importar un objeto con las funciones, en lugar de solo importar las funciones.

esto funciona

 //service.test.js const get = require('../../modules/bankUser/model/getRegisteredUser'); get.getRegisteredUser = jest.fn() .mockImplementationOnce(async () => mock) .mockImplementationOnce(async () => mockUpdated);
 //service.js const get = require('../model/getRegisteredUser'); const testedFunction () => { const depositReciver = await get.getRegisteredUser(depositName, depositCpf); }

esta dosis

 //service.test.js const get = require('../../modules/bankUser/model/getRegisteredUser'); get.getRegisteredUser = jest.fn() .mockImplementationOnce(async () => mock) .mockImplementationOnce(async () => mockUpdated);
 //service.js const { getRegisteredUser } = require('../model/getRegisteredUser'); const testedFunction () => { const depositReciver = await getRegisteredUser(depositName, depositCpf); }

Estoy intentando esto ( camino ):

 //service.test.js const get = require('../../modules/bankUser/model/getRegisteredUser'); jest.mock('../../modules/bankUser/model/getRegisteredUser'); get.mockImplementationOnce(() => ({ getRegisteredUser: () => mockObject }));

broma devuelve esto:

 TypeError: get.mockImplementationOnce is not a function

también he intentado importar así

 //service.test.js const { getRegisteredUser } = require('../../modules/bankUser/model/getRegisteredUser'); jest.mock('../../modules/bankUser/model/getRegisteredUser'); getRegisteredUser.mockImplementationOnce(() => ({ getRegisteredUser: () => mockObject }));

EDITAR

 //getRegisteredUser.js const { getConnection } = require('../../../global/connection'); const getRegisteredUser = async (userName, cpf) => { const db = await getConnection('Data-Base'); const res = await db.collection('Collection') .findOne({ userName, cpf }); return res; }; module.exports = { getRegisteredUser };
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El ejemplo que está señalando [https://jestjs.io/docs/es6-class-mocks#replacing-the-mock-using-mockimplementation-or-mockimplementationonce][1] está relacionado con la exportación predeterminada, pero creo que usted es usando exportación con nombre en su código.

Hay varias formas de hacerlo

Un camino

 const get = require('../../modules/bankUser/model/getRegisteredUser'); jest.mock('../../modules/bankUser/model/getRegisteredUser'); get.getRegisteredUser.mockImplementationOnce(() => mockObject);

Segunda Vía

 jest.mock('../../modules/bankUser/model/getRegisteredUser', () => ({ ...jest.requireActual('../../modules/bankUser/model/getRegisteredUser'), getRegisteredUser: jest.fn().mockImplementation(() => mockObject), }))

una otra manera

 We can also mock a module using the __mocks__ directory which is inbuilt feature of jest

Y al final, nunca se olvidó de llamar a clearAllMocks() después de cada prueba; de lo contrario, puede afectar el resultado de otras pruebas.

 afterEach(() => { jest.clearAllMocks(); });
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda