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

87
Visualizações
Intentar simular una devolución de datos en una promesa hace que se agote el tiempo de espera de broma

Así que tengo una función que es una promesa y devuelve una matriz (ya sea vacía o llena dependiendo de cómo regresen los datos) valores y está obteniendo los valores simulados, pero solo se está agotando el tiempo antes de que se resuelva?

 it('works correctly when audience assigned', () => { fetchEssentialComplianceData( { includeAudienceAssigned: true }, { id: 'userId' } ); getAssignedLearning.mock.calls[0][1]([], { getUserAssignments: { results: [ { content: { contentType: 'contentType', isOfficial: true, title: 'content title', }, contentId: 'content id', dueDate: 'due date', }, ], }, }); expect(getAssignedLearning).toHaveBeenCalledTimes(1); expect(getAssignedLearning).toHaveBeenCalledWith( { input: { userId: 'userId', pageNumber: 0, returnCount: 12, sort: [ { type: 'dueDate', order: 'desc', }, { type: 'dateCreated', order: 'desc', }, ], }, }, expect.any(Function) ); //TODO always times out before resolving? return expect( fetchEssentialComplianceData( { includeAudienceAssigned: true }, { id: 'userId' } ) ).resolves.toBe([]); });

Probé diferentes formas de escribirlo, haciéndolo su propia función, probé

Lo escribí así que pasó, pero fue un pase falso.

 const result = fetchEssentialComplianceData( { includeAudienceAssigned: true }, { id: 'userId' } ) expect(result).resolves.toBe(['123'])

También tengo la misma función probada pero sin retorno de datos (nunca se envía la solicitud) y esto funciona correctamente, lo he probado con diferentes valores para asegurarme y es correcto.

 it('works correctly when not audience assigned', () => { fetchEssentialComplianceData( { includeAudienceAssigned: false }, { id: 'userId' } ); expect(getAssignedLearning).toHaveBeenCalledTimes(0); return expect( fetchEssentialComplianceData({ includeAudienceAssigned: false }) ).resolves.toStrictEqual([]); });

Estoy realmente perplejo ahora, hice clic en todos los enlaces que pude encontrar con Google y no pude encontrar nada que funcionara.

about 4 years ago · Juan Pablo Isaza
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