fetch-reply-with
v2.0.2
Published
Mock window.fetch requests to ease unit testing
Downloads
1,418
Maintainers
Readme
fetch-reply-with
Simplifies unit tests by intercepting fetch requests and returning mocked responses.
Install
npm install --save-dev fetch-reply-with
Usage
require('fetch-reply-with'); // <- `fetch` is now globally available
// intercept GET http://orcascan.com and reply with...
fetch('http://orcascan.com', {
// regular fetch option
method: 'GET',
// add reply for this fetch
replyWith: {
status: 200,
body: 'Barcode Scanner app',
headers: {
'Content-Type': 'text/html'
},
delay: 500 // miliseconds to wait before responding (default = 0)
}
});
// execute fetch request
fetch('http://orcascan.com').then(function(res){
return res.text();
})
.then(function(text){
// text === `Barcode Scanner app`
});
Couple of things to note:
- Requests not setup with
replyWith
are executed as normal - A
replyWith
can be modified by redefining thereplyWith
Unit Tests
The project includes unit tests, to run the tests:
- Checkout
git clone https://github.com/john-doherty/fetch-reply-with
- Navigate into project folder
cd fetch-reply-with
- Install dependencies
npm install
- Run the tests
npm test
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :)
Star the repo
If you find this useful please star the repo, it helps us prioritize fixes :raised_hands:
History
For change-log, check releases.
License
Licensed under MIT License © John Doherty