chai-fetch-mock
Chai plugin for fetch-mock library
A set of Chai assertions for fetch-mock, a mocking library for fetch()
and isomorphic-fetch.
Installation
This library depends on:
"peerDependencies": {
"chai": "3.x || 4.x",
"fetch-mock": "5.1.x || 6.x"
}
Note: fetch-mock 6.0 is only compatible with Node.js 7 or greater.
Install those, and then install:
npm install chai-fetch-mock
Usage
Note: if you want to use this plugin with other Chai plugins that use a similar vocabulary—such as sinon-chai, which also has a called
assertion—apply chai-fetch-mock last. chai-fetch-mock's methods will only kick in when an assertion calls the route()
method.
;;; // Call conflicting plugins before// chai.use(sinonChai)chai; ;
API
route(value)
Sets up an assertion to check calls to a matcher with the name value
. This is either the URL of the route, or the custom name of the route. Use this before any other fetch-mock assertion.
// Default namefetchMock;; // Custom namefetchMock;;
This function on its own only asserts that the mock route exists.
called
Asserts that fetch()
was used to call a specific route at least once.
tohavebeencalled;tonothavebeencalled;
This method can be chained to the ones below, allowing you to check if a route was called and if it was called with specific properties in one assertion.
args(value)
Asserts that the arguments of last call to fetch()
to a specific route deeply equal value
.
;
args(value)
Asserts that the URL of last call to fetch()
to a specific route equals value
.
;
options(value)
Asserts that the options of last call to fetch()
to a specific route deeply equal value
.
;
License
MIT © Geoff Kimball