{"dist":{"shasum":"b06a3777aa12cee7e0f5827dfd13f7cd35930d1a","tarball":"https://registry.npmjs.org/@node-loaders/jest-mock/-/jest-mock-1.1.0.tgz","fileCount":6,"integrity":"sha512-hiYTmsyBr3x4uPhe+mUGDWQ2+skMBLdBRxfLyvAKssGMUEjtLhvlVR26oxJS4PM8uiKWRgGrFKXr5ScgKtnPPA==","signatures":[{"sig":"MEUCIQCBJNQ1cNrzSaecZMArsEl7K/6/1Ao0iWDgNfc2JEIKIgIgDZ8ySSjAC57KQ764+ZKnMzBeuTCWw6pr9nzJ+JrHLV4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8741},"name":"@node-loaders/jest-mock","type":"module","types":"./dist/index.d.ts","readme":"# @node-loaders/jest-mock\n\nIntegrates [@node-loaders/mock](https://github.com/node-loaders/loaders/tree/main/workspaces/mock#node-loadersmock) with jest-mock using a jest like api.\n\n## Usage\n\nFor configuration tools, refer to [usage](https://github.com/node-loaders/loaders#usage)\n\n`@node-loaders/jest-mock` re-exports `@node-loaders/mock` default loader, for non default loader use `@node-loaders/mock` directly.\n\n## Implementing tests\n\nImport a module with mocked dependencies:\n\n```js\nimport { mock, checkMocks, restoreMocks } from '@node-loaders/jest-mock';\n\nconst mockedPath = (await mock) < typeof import('path') > 'path';\nconst mockedModule = await import('./module.js');\n\ndescribe(() => {\n  after(() => {\n    checkMocks(); // Detects for unused mocks to avoid mistakes on import changes.\n    restoreMocks(); // Restore jest-mocks to initial state.\n  });\n\n  it(async () => {\n    mockedModule.run();\n    expect(mockedPath.join).toBeCalled();\n  });\n});\n```\n\nDue to technical limitation, `mock` + `import` only works for second level imported modules, which is equivalent to `importMock` with `{ [maxDepth]: 1 }` options.\n\n### Advanced options\n\nFor advanced options use `importMock` instead of `import`.\nFor more information on about `importMock` refer to [mock](https://github.com/node-loaders/loaders/tree/main/workspaces/mock#esm).\n\n```js\nimport { mock, importMock, checkMocks, fn, restoreMocks, maxDepth, ignoreUnused, fullMock } from '@node-loaders/jest-mock';\n\nconst mockedPath = (await mock) < typeof import('path') > 'path';\nconst mockedFunction = fn.mock();\nconst mockedModule = await importMock('./module.js', {\n  [maxDepth]: number, // -1 by default\n  [ignoreUnused]: boolean, // false by default\n  '../a-mocked-module.js': {\n    [fullMock]: boolean, // false by default\n    func: mockedFunction,\n  },\n});\n\ndescribe(() => {\n  after(() => {\n    checkMocks(); // Detects for unused mocks to avoid mistakes on import changes.\n    restoreMocks(); // Restore jest-mocks to initial state.\n  });\n\n  it(async () => {\n    mockedModule.run();\n    expect(mockedPath.join).toBeCalled();\n    expect(mockedFunction).toBeCalled();\n  });\n});\n```\n\n## License\n\nMIT\n","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"gitHead":"3375740be1456ec28ff7e3c6acffdbc94dfd062c","scripts":{"fix":"xo --fix","test":"mocha","build":"tsc","clean":"rimraf dist","pretest":"xo","clean-all":"npm run clean && rimraf node_modules","test-coverage":"c8 mocha"},"_npmUser":{"name":"mshima","email":"marceloshima@gmail.com"},"_npmVersion":"lerna/6.6.2/node@v16.20.0+arm64 (darwin)","description":"Integrates [@node-loaders/mock](https://github.com/node-loaders/loaders/tree/main/workspaces/mock#node-loadersmock) with jest-mock using a jest like api.","directories":{},"maintainers":[{"name":"mshima","email":"marceloshima@gmail.com"}],"_nodeVersion":"16.20.0","dependencies":{"jest-mock":"^29.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","peerDependencies":{"@node-loaders/mock":"^1.0.0-beta.0"},"_npmOperationalInternal":{"tmp":"tmp/jest-mock_1.1.0_1684197421196_0.9319408225250234","host":"s3://npm-registry-packages"},"_id":"@node-loaders/jest-mock@1.1.0","version":"1.1.0"}