UNPKG

@trinitymirrordigital/dragonfly-jest-config

Version:
55 lines (48 loc) 972 B
const manageMock = () => { const mocks = new Set(); return { add(mock) { if (Array.isArray(mock)) { mock.forEach((m) => { mocks.add(m); }); } else { mocks.add(mock); } }, delete(mock) { mock.mockRestore(); mocks.delete(mock); }, clear() { const mockIterator = mocks.values(); for (const mock of mockIterator) { mock.mockClear(); } }, clearAfter() { afterEach(() => { this.clear(); }); }, getAll() { return mocks; }, reset() { const mockIterator = mocks.values(); for (const mock of mockIterator) { mock.mockReset(); } }, removeAll() { afterAll(() => { const mockIterator = mocks.values(); for (const mock of mockIterator) { mock.mockRestore(); } mocks.clear(); }); }, }; }; global.manageMock = manageMock();