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

254
Visualizações
Tiempo de espera: la devolución de llamada asíncrona no se invocó dentro de los 5000 ms

Creé este gancho:

 import { useQuery, gql } from '@apollo/client'; export const GET_DECIDER = gql` query GetDecider($name: [String]!) { deciders(names: $name) { decision name value } } `; export const useDecider = (name) => { const { loading, data } = useQuery(GET_DECIDER, { variables: { name } }); console.log('loading:', loading); console.log('data:', data); return { enabled: data?.deciders[0]?.decision, loading }; };

Estoy tratando de probarlo con la biblioteca de pruebas de reacción:

 const getMock = (decision) => [ { request: { query: GET_DECIDER, variables: { name: 'FAKE_DECIDER' }, }, result: { data: { deciders: [{ decision }], }, }, }, ]; const FakeComponent = () => { const { enabled, loading } = useDecider('FAKE_DECIDER'); if (loading) return <div>loading</div>; console.log('DEBUG-enabled:', enabled); return <div>{enabled ? 'isEnabled' : 'isDisabled'}</div>; }; // Test import React from 'react'; import { render, screen, cleanup, act } from '@testing-library/react'; import '@testing-library/jest-dom'; import { MockedProvider } from '@apollo/client/testing'; import { useDecider, GET_DECIDER } from './useDecider'; describe('useDecider', () => { afterEach(() => { cleanup(); }); it('when no decider provided - should return false', async () => { render(<MockedProvider mocks={getMock(false)}> <FakeComponent /> </MockedProvider> ); expect(screen.getByText('loading')).toBeTruthy(); act((ms) => new Promise((done) => setTimeout(done, ms))) const result = screen.findByText('isDisabled'); expect(result).toBeInTheDocument(); }); });

Sigo recibiendo este error:

Tiempo de espera: la devolución de llamada asíncrona no se invocó dentro del tiempo de espera de 5000 ms especificado por jest.setTimeout.Timeout: la devolución de llamada asíncrona no se invocó dentro del tiempo de espera de 5000 ms especificado por jest.setTimeout.Error:

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