JSPM

  • Created
  • Published
  • Downloads 29541
  • Score
    100M100P100Q148874F
  • License MIT

Generate random mock data from OpenAPI descriptions for msw.

Package Exports

  • msw-auto-mock

Readme

msw-auto-mock

A cli tool to generate random mock data from OpenAPI descriptions for msw.

Why

We already have all the type definitions from OpenAPI spec so hand-writing every response resolver is completely unnecessary.

Usage

Install:

yarn add msw-auto-mock

Read from your OpenAPI descriptions and output generated code:

# can be http url or a file path on your machine, support both yaml and json.
npx msw-auto-mock http://your_openapi.json -o ./mock.js

See https://raw.githubusercontent.com/zoubingwu/msw-auto-mock/master/example/src/mock.js for Github API example. The msw mocking handlers was generated by following command:

npx msw-auto-mock https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/ghes-3.3/ghes-3.3.json --output ./example/src/mock.js

Integrate with msw, see Mock Service Worker's doc for more detail:

# Install msw
yarn add msw --dev

# Init service worker
npx msw init public/ --save

Then import those mock definitions in you app entry:

if (process.env.NODE_ENV === 'development') {
  import('./mock');
}

Run you app then you'll see a successful activation message from Mock Service Worker in your browser's console.