dbl-utils
Version:
Utilities for dbl, adba and others projects
1 lines • 2.46 kB
Source Map (JSON)
{"file":"/home/diablo/dev/dbl-utils/__tests__/fetch-queue.test.ts","mappings":";;;;;;;;;;;;;;AAAA,qEAA4C;AAE5C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,iCAAiC,EAAE,GAAS,EAAE;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,qBAAU,CAAC,SAAS,CAAC,CAAC;QAExC,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAClD,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAElD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAE7C,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAS,EAAE;QACrD,MAAM,SAAS,GAAG,IAAI;aACnB,EAAE,EAAE;aACJ,qBAAqB,CAAC,KAAK,CAAC;aAC5B,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,qBAAU,CAAC,SAAS,CAAC,CAAC;QAExC,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAEjD,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","names":[],"sources":["/home/diablo/dev/dbl-utils/__tests__/fetch-queue.test.ts"],"sourcesContent":["import FetchQueue from '../src/fetch-queue';\n\ndescribe('FetchQueue', () => {\n it('deduplicates identical requests', async () => {\n const fetchMock = jest.fn().mockResolvedValue('ok');\n const queue = new FetchQueue(fetchMock);\n\n const p1 = queue.addRequest('http://example.com');\n const p2 = queue.addRequest('http://example.com');\n\n const [r1, r2] = await Promise.all([p1, p2]);\n\n expect(fetchMock).toHaveBeenCalledTimes(1);\n expect(r1).toBe('ok');\n expect(r2).toBe('ok');\n });\n\n it('handles different requests separately', async () => {\n const fetchMock = jest\n .fn()\n .mockResolvedValueOnce('one')\n .mockResolvedValueOnce('two');\n const queue = new FetchQueue(fetchMock);\n\n const r1 = queue.addRequest('u1');\n const r2 = queue.addRequest('u2');\n const [res1, res2] = await Promise.all([r1, r2]);\n\n expect(fetchMock).toHaveBeenCalledTimes(2);\n expect(res1).toBe('one');\n expect(res2).toBe('two');\n });\n});\n\n"],"version":3}