Tengo un par de archivos a continuación: Cuando ejecuto jest, aparece este error:
[Rechazo de promesa no controlada: este error se originó al lanzar dentro de una función asíncrona sin un bloque catch, o al rechazar una promesa que no se manejó con .catch(). La promesa se rechazó con el motivo "ReferenceError: fetch no está definido".]
ApiHandler.test.ts
import { formatDateOptions } from "/ApiHandler"; describe("formatDateOptions()", () => { it("Describe bla bla", () => { const inputDate = {Tables[{a:1}]} const expected = [ {key:1,text:"a",}] const result = formatDateOptions(inputDate); expect(result).toEqual(expected); }); });ApiHandler.ts
export const formatDateOptions = (data) => { const dates = []; data.Tables[0].Rows.map((x) => dates.push({ key: x[0], text: x[0] })); return dates; };Aunque aquí no se usa fetch, recibo el error anterior. Para obtener más información, fetch se usa sin ninguna relación antes de que formatDateOptions se llame Muestra donde se usa fetch
ApiHandler.ts (mismo archivo)
export const setDatePickerOptions = async()=> { try { const [dates, platformSignal] = await Promise.all([ dateFilters(platform), platformSignal(platform), ]); try { const [datesJson, platformSignalJson] = await Promise.all([ dates.json(), platformSignal.json(), ]); const responseData = formatDateOptions(datesJson); } catch (e) { console.error(e); } } catch (e) { console.error(e); } }; export const dateFilters = async(platform)=> { try { const dates = await fetchWrapper(platform); return dates; } catch (error) { console.log(error); } }; export async function fetchWrapper(platform){ try { const response = await fetch(url, { method: "post", headers, body: JSON.stringify({ csl: platform }), }); return response; } catch (e) { console.log(e); } }Incluso importé node-fetch en APihandler.ts pero aún así no funciona. Por favor, ayúdame.