@routar/msw
v1.6.0
Published
MSW v2 handler factory for routar routers — generate typed mock handlers from RouterDef
Maintainers
Readme
@routar/msw
MSW v2 handler factory for routar — generate fully-typed mock handlers from a RouterDef.
Install
npm install @routar/core msw
npm install --save-dev @routar/mswUsage
import { createMswHandlers } from '@routar/msw'
import { HttpResponse } from 'msw'
import { setupServer } from 'msw/node'
import { todoRouter } from './api'
const server = setupServer(
...createMswHandlers(todoRouter, 'https://api.example.com', {
getList: () => HttpResponse.json([{ id: 1, title: 'Todo' }]),
getDetail: ({ params }) =>
HttpResponse.json({ id: params.id, title: 'Todo' }),
}),
)
beforeAll(() => server.listen())
afterEach(() => server.resetHandlers())
afterAll(() => server.close())- Partial mocking — only endpoints with a resolver get a handler; the rest pass through naturally.
- Typed resolver context —
params,query, andbodyare parsed through the endpoint'srequestschema, giving you the exact types defined in your router. - Nested routers — the resolver map mirrors the router's shape, including nested
defineRouterentries.
See the documentation or the main README for full documentation.
