7.4.7 • Published 1 month ago

@smartlyio/oats-nock-adapter v7.4.7

Weekly downloads
8
License
MIT
Repository
github
Last release
1 month ago

Nock server adapter for smartlyio/oats

Nock adapter for creating mock servers from openapi definitions using oats.

To mock the request POST /item define the route as for any oats server adapter and then bind the route defining object to the nock adapter. The bound mock servers are namespaced using the OpenApi server strings as nock basepaths so that multiple nock mocks can be used simultanenously so long as the basepaths differ. All of the mocked routes are persisted so any number of requests are served.

// yarn ts-node examples/example.ts
import * as nockAdapter from '../src/nock';
import * as api from '../tmp/client.types.generated'
import * as types from '../tmp/openapi.types.generated';
import * as runtime from '@smartlyio/oats-runtime';

nockAdapter.bind(api.router, {
  '/item': {
    post: async ctx => {
      return runtime.json(
        201,
        types.typeItem.maker({
          id: ctx.body.value.id + ' response',
          name: ctx.body.value.name
        }).success()
      );
    }
  }
});

The bind call is just a constructor for a Server class that provides a mock method for adding new mocked routes or overlaying new handlers on top of already mocked routes. If the overlaying mock throws Next the previous mock for the route is called instead.

// yarn ts-node examples/server.ts
import * as nockAdapter from '../src/nock';
import * as api from '../tmp/client.types.generated'
import * as types from '../tmp/openapi.types.generated';
import * as runtime from '@smartlyio/oats-runtime';

const server = nockAdapter.bind(api.router, {
  '/item': {
    post: async ctx => {
      return runtime.json(
        201,
        types.typeItem.maker(ctx.body.value).success()
      );
    }
  }
});

server.mock({
  '/item': {
    post: async () => {
      throw new nockAdapter.Next();
    }
  }
});
7.4.8-alpha.3

1 month ago

7.4.8-alpha.1

1 month ago

7.4.8-alpha.0

1 month ago

7.4.7

1 month ago

7.4.6

1 month ago

7.4.5

2 months ago

7.4.4

2 months ago

7.4.4-alpha.2

2 months ago

7.4.1-alpha.2

5 months ago

7.4.1

5 months ago

7.3.1-alpha.7

10 months ago

7.3.3-alpha.0

9 months ago

7.3.3-alpha.1

9 months ago

7.3.3-alpha.6

9 months ago

7.4.0

9 months ago

7.3.2

10 months ago

7.3.0

12 months ago

7.1.0

1 year ago

7.0.1-next.1

1 year ago

6.3.3-alpha.1

1 year ago

7.0.0

1 year ago

7.0.1-alpha.1

1 year ago

7.2.0

12 months ago

6.1.0

1 year ago

6.3.2-alpha.3

1 year ago

6.3.0

1 year ago

6.1.2

1 year ago

6.1.1

1 year ago

6.3.2

1 year ago

6.3.1

1 year ago

6.1.3

1 year ago

6.0.3

1 year ago

6.2.0

1 year ago

6.1.4-alpha.3

1 year ago

6.0.2

1 year ago

6.0.1

2 years ago

6.0.0

2 years ago

6.0.0-alpha.12

2 years ago

6.0.0-alpha.13

2 years ago

5.1.5

2 years ago

5.1.4

2 years ago

5.1.3

2 years ago

5.1.2

2 years ago

5.1.1

2 years ago

5.1.0

2 years ago

5.0.0

2 years ago

5.1.4-alpha.0

2 years ago

4.4.1-alpha.19

2 years ago

4.4.1-alpha.14

2 years ago

4.4.1-alpha.13

2 years ago

4.4.1-alpha.18

2 years ago

4.4.1-alpha.9

2 years ago

4.4.0

2 years ago

4.3.2

2 years ago

4.3.1

2 years ago

4.3.0

2 years ago

4.1.1-alpha.14

2 years ago

4.2.0

2 years ago

4.1.0

2 years ago

4.1.0-alpha.0

2 years ago

4.0.0-alpha.2

2 years ago

3.4.0

2 years ago

3.5.0

2 years ago

4.0.1

2 years ago

4.0.0

2 years ago

4.0.3

2 years ago

4.0.2

2 years ago

3.5.0-alpha.6

2 years ago

3.3.1-alpha.24

3 years ago

3.3.1

3 years ago

3.1.6-alpha.15

3 years ago

3.3.0

3 years ago

3.2.0

3 years ago

3.3.0-alpha.1

3 years ago

3.1.5

3 years ago

3.2.0-alpha.33

3 years ago

3.2.0-alpha.15

3 years ago

3.1.4-alpha.14

3 years ago

3.1.4

3 years ago

3.1.4-alpha.1

3 years ago

3.1.3

3 years ago

3.1.2

3 years ago

3.1.1

3 years ago

3.0.0

3 years ago

3.0.0-alpha.18

3 years ago

3.0.0-alpha.17

3 years ago

2.18.3-alpha.10

3 years ago

2.18.3-alpha.17

3 years ago

2.18.1

3 years ago

2.18.2

3 years ago

0.0.10

3 years ago

0.0.9

3 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago