JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5021
  • Score
    100M100P100Q141568F
  • License MIT

Concise support for mock requests in IcedFrisby

Package Exports

  • icedfrisby-nock

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (icedfrisby-nock) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

icedfrisby-nock

version license build coverage code style

Concise support for mock requests in IcedFrisby.

Usage

Compose icedfrisby with icedfrisby-nock.

const frisby = require('icedfrisby-nock')(require('icedfrisby'))

or, more semantically, using the delightful mixwith:

const { mix } = require('mixwith')

const frisby = mix(require('icedfrisby')).with(require('./icedfrisby-nock'))

Allow connections to localhost, but simulate failure for any other HTTP connections.

await frisby.create(...)
  .get(...)
  .networkOff()
  .expectJSON(...)
  .run()

Mock one request, and simulate failure for any other HTTP connection.

intercept() automatically invokes networkOff().

await frisby.create(...)
  .get(...)
  .intercept(nock => nock('http://example.com')
    .get('/foobar')
    .reply(200))
  .expectJSON(...)
  .run()

Mock one request and allow all other HTTP connections.

await frisby.create(...)
  .get(...)
  .intercept(nock => nock('http://example.com')
    .get('/foobar')
    .reply(200))
  .networkOn()
  .expectJSON(...)
  .run()

Mock one request only if a condition is truthy.

const someCondition = true
await frisby.create(...)
  .get(...)
  .interceptIf(someCondition, nock => nock('http://example.com')
    .get('/foobar')
    .reply(200))
  .expectJSON(...)
  .run()

When using intercept(), interceptIf() or networkOff(), the plugin restores network access when the test finishes.

To check if a Frisby object has an intercept set, inspect the hasIntercept property.

To skip the test if an intercept is present, invoke .skipIfIntercepted() on the chain. This is useful with when invoked from a shared setup function or when performing conditional intercepts.

For the Nock API, refer to the Nock docs.

For the IcedFrisby API, refer to the IcedFrisby docs.

Installation

npm install --save-dev icedfrisby nock icedfrisby-nock

Who's using this

This project was developed for testing Shields.io.

Contribute

Pull requests welcome!

Support

If you are having issues, please let me know.

License

The project is licensed under the MIT license.