1.8.0 • Published 7 months ago

@anev/ts-mountebank v1.8.0

Weekly downloads
-
License
ISC
Repository
github
Last release
7 months ago

ts-mountebank

A simple node package that lets you manage your Mountebank test server. Based on https://www.npmjs.com/package/@toincrease/node-mountebank, but

  • updated/removed vulnerable packages,
  • modernized the code and
  • added ability to create very simple proxies
  • improved predicates (not just equal)

Usage

Pre-Requisite

Install Mountebank:

npm install -g mountebank --production

Start Mountebank:

mb 

I recommend reading the Mountebank documentation for a deeper understanding of their API.

For more samples on how to use this package check this blog: https://angela-evans.com/easy-api-tests-with-mountebank/ or the integration tests.

Create Imposter

const mb = new Mountebank();
let imposter = new Imposter().withPort(port).withStub(
    new DefaultStub(testPath, HttpMethod.GET, 'testbody', 222));
await mb.createImposter(imposter);

Check for QueryString

Add a query to the stub. For usages check the tests in ./integration-tests/predicate.flexi-predicate.query.mb-tests.ts

new Stub()
    .withPredicate(
    new FlexiPredicate()
        .withOperator(Operator.equals)
        .withPath('/testpath')
        .withQuery({name: 'x', max: 5})
    )
    .withResponse(new DefaultResponse('found', 222))

Create Debug Proxy

A simple proxy which always proxies the request and records the responses. This is useful to

  • 'debug' traffic during tests or
  • record traffic between APIs to use as template for building imposters.

// forward all requestsfrom port 5000 => 5001 and generate response stubs
let proxyImposter = new Imposter()
    .withPort(5000)
    .withStub(new Stub()
        .withProxy(new DebugProxy(`http://localhost:5001}`))); 

await mb.createImposter(proxyImposter);
1.8.0

7 months ago

1.7.0

10 months ago

1.6.1

1 year ago

1.6.0

2 years ago

1.5.0

2 years ago

1.4.1

2 years ago

1.4.0

3 years ago

1.3.1

3 years ago

1.3.0

3 years ago

1.2.0

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago