UNPKG

@ledgerhq/live-common

Version:
35 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const composeHooks_1 = require("../composeHooks"); describe("composeHooks", () => { it("should compose hooks and merge their results", () => { const hook1 = (items) => items.map(item => ({ id: item.id, extra: item.id * 2 })); const hook2 = (items) => items.map(item => ({ ...item, final: item.extra + 1 })); const composed = (0, composeHooks_1.composeHooks)(hook1, hook2); const input = [{ id: 1 }, { id: 2 }]; const processedInput = input.map(item => ({ id: item.id, extra: item.id * 2 })); const result = composed(processedInput); expect(result).toEqual([ { id: 1, extra: 2, final: 3 }, { id: 2, extra: 4, final: 5 }, ]); }); it("should handle hooks that return undefined", () => { const hook1 = (items) => items.map(item => ({ id: item.id, extra: item.id * 2 })); const hook2 = () => undefined; const composed = (0, composeHooks_1.composeHooks)(hook1, hook2); const input = [{ id: 1 }, { id: 2 }]; const result = composed(input); expect(result).toEqual([ { id: 1, extra: 2 }, { id: 2, extra: 4 }, ]); }); it("should return the original items if no hooks are provided", () => { const composed = (0, composeHooks_1.composeHooks)(); const input = [{ id: 1 }, { id: 2 }]; const result = composed(input); expect(result).toEqual(input); }); }); //# sourceMappingURL=composeHooks.test.js.map