UNPKG

testbook

Version:
38 lines 1.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.setupMocks = exports.runMockStep = void 0; const runMockStep = (file, exportName, step, context) => { const { mocks } = context; const mock = mocks.find((m) => m.name === step.definition.name); mock.mock.addMock(step.definition.args, step.definition.return); return Promise.resolve(["success", context]); }; exports.runMockStep = runMockStep; const setupFetchMock = () => { let calls = []; let mockReturnValues = []; window.fetch = function (input, init) { const callingArgs = Array.from(arguments); calls.push(callingArgs); const mockReturnValue = mockReturnValues.find(([args]) => JSON.stringify(args) === JSON.stringify(callingArgs)); return Promise.resolve({ json: () => Promise.resolve(mockReturnValue ? mockReturnValue[1] : []), }); }; return { addMock: (args, returnValue) => mockReturnValues.push([args, returnValue]), getCalls: () => calls, }; }; const MOCKS = [ { name: "fetch", setup: setupFetchMock, }, ]; const setupMocks = () => MOCKS.map(({ name, setup }) => ({ name, mock: setup(), })); exports.setupMocks = setupMocks; //# sourceMappingURL=mocks.js.map