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

439
Visualizações
how to test ag-grid with Jest/Enzyme when server side

The ag-grid onGridReady will not called when rowModelType is server-side, so when I run test code can not find agGridReact api, the error is "TypeError: Cannot read property 'getDisplayedRowCount' of undefined"

this is my test code (index.test.js)

let component = null;
let agGridReact = null;

const ensureGridApiHasBeenSet = async (componentRef) => {
  await act(async () => {
    await new Promise(function (resolve, reject) {
      (function waitForGridReady() {
        if (componentRef.current.getApi()) {
          return resolve();
        }
        setTimeout(waitForGridReady, 10);
      })();
    });
  });
};

beforeEach(async () => {
  const ref = React.createRef();
  component = mount(<SymbolMetadata ref={ref} />);
  agGridReact = component.find(AgGridReact).instance();
  await ensureGridApiHasBeenSet(ref);
});

afterEach(() => {
  component.unmount();
  agGridReact = null;
});

describe('metadata', () => {
  it('metadata  should have correct columns', () => {
    console.info('agGridReact.api.getDisplayedRowCount());
  });
});

this is ag-grid (index.js)

  const onGridReady = async (params: GridReadyEvent) => {
    gridOptionsApi.current = params.api;
    columnApiRef.current = params.columnApi;
  };
  <AgGridReact
      animateRows
      suppressColumnVirtualisation
      serverSideFilteringAlwaysResets
      rowModelType={'serverSide'}
      rowHeight={32}
      rowSelection={'single'}
      defaultColDef={{
         menuTabs: ['filterMenuTab'],
         resizable: true,
         filter: true,
      }}
      serverSideStoreType={ServerSideStoreType.Partial}
      pagination
      localeText={{
          noRowsToShow: 'No Data',
       }}
      paginationPageSize={pageSize}
      cacheBlockSize={pageSize}
      headerHeight={24}
      gridOptions={gridOptions}
      onGridReady={onGridReady}
     />
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Testing with enzyme is covered in the AG Grid Documentation:

Testing React Hooks with Enzyme

Testing with Jest & Enzyme - querying JSDOM vs AG Grid API

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