{"_id":"@astral/mobx-query-vitest-mock","name":"@astral/mobx-query-vitest-mock","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@astral/mobx-query-vitest-mock","version":"0.1.0","browser":"./index.js","main":"./index.js","description":"Vitest Mock для тестирования @astral/mobx-query","peerDependencies":{"@astral/mobx-query":"^1.8.0"},"dependencies":{},"author":{"name":"Astral.Soft"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/kaluga-astral/mobx-query.git"},"bugs":{"url":"https://github.com/kaluga-astral/mobx-query/issues"},"keywords":[],"sideEffects":false,"types":"./index.d.ts","module":"./index.js","exports":{".":"./index.js"},"_id":"@astral/mobx-query-vitest-mock@0.1.0","gitHead":"3ca56f25b03436fd18c451adfde1c7be5a5c33ab","homepage":"https://github.com/kaluga-astral/mobx-query#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-bGv9SxIMOaMkUHYIgYsJ9CrZEz3MsMoWBRxMk55XNhSiS22aoKAZ7H7ZvZVQPpWBGVGNZjjpoF40zSWYmItJjw==","shasum":"da06fb6af32fb2dab51fb4351421e65f089222f1","tarball":"https://registry.npmjs.org/@astral/mobx-query-vitest-mock/-/mobx-query-vitest-mock-0.1.0.tgz","fileCount":9,"unpackedSize":5522,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjteit5RxEJZyc73y1T0HxmjfMaI5amvgFpnTMvghQ6gIhANEMf80zbI5bkGnYSChVevzkdQeLFzR89xh8MPg9gjrn"}]},"_npmUser":{"name":"astral_frontend","email":"frontendastral@gmail.com"},"directories":{},"maintainers":[{"name":"and_tem","email":"ipad_nw@icloud.com"},{"name":"astral_frontend","email":"frontendastral@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mobx-query-vitest-mock_0.1.0_1733163397889_0.9833693406645425"},"_hasShrinkwrap":false}},"time":{"created":"2024-12-02T18:16:37.814Z","0.1.0":"2024-12-02T18:16:38.091Z","modified":"2024-12-02T18:16:38.370Z"},"maintainers":[{"name":"and_tem","email":"ipad_nw@icloud.com"},{"name":"astral_frontend","email":"frontendastral@gmail.com"}],"description":"Vitest Mock для тестирования @astral/mobx-query","homepage":"https://github.com/kaluga-astral/mobx-query#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/kaluga-astral/mobx-query.git"},"author":{"name":"Astral.Soft"},"bugs":{"url":"https://github.com/kaluga-astral/mobx-query/issues"},"license":"MIT","readme":"# @astral/mobx-query-vitest-mock\n\nVitest Mock для тестирования [@astral/mobx-query](http://npmjs.com/package/@astral/mobx-query).\n\n## Установка\n\n```bash\nnpm install @astral/mobx-query-vitest-mock --save-dev\n```\n\n```bash\nyarn add @astral/mobx-query-vitest-mock --dev\n```\n\n## Пример использования\n\n```ts\nconst cache = new MobxQuery();\n\nconst { createQueryGroup } = cache.defineCacheGroups('test');\n\nexport const docFetcher = {\n  queries: {\n    doc: createQueryGroup('doc', () => {\n      return {\n        execute: () => httpService.get('/doc'),\n      };\n    }),\n    user: createQueryGroup('user', () => {\n      return {\n        execute: () => httpService.get('/user'),\n      };\n    }),\n  },\n};\n\nexport type DocFetcher = typeof docFetcher;\n```\n\n```ts\nconst fetcherMock = mockCacheGroups<DocFetcher>(\n  cache,\n  ({ createQueryGroup }) => ({\n    queries: {\n      doc: createQueryGroup('doc', () => ({\n        execute: () => Promise.resolve('user'),\n      })),\n    },\n  }),\n);\n\nconst docQueryMock = fetcherMock.queries.doc.create();\n\nconst data = await docQueryMock.async(); // 'user'\n\nfetcherMock.queries.user; // ошибки типов не будет, но при выолнении будет ошибка потому что фактически user не определён\n```\n","readmeFilename":"README.md"}