Powerful fetch
wrapper with the given functionallies:
- log request and response when using env
DEBUG=true
- save request when using env
WRITE_MOCK=true
- reply request when using env
USE_MOCK=true
- send error to slack and sentry based on your setup
This will make the request but it won't show any logs
yarn es scripts/test.ts
Show request and response logs
DEBUG=true yarn es scripts/test.ts
Output example
GET https://cat-fact.herokuapp.com/facts
{
time: 'NaNms',
init: 'https://cat-fact.herokuapp.com/facts',
options: { headers: { 'user-agent': 'node-fetch' } },
json: [
{
status: { verified: true, feedback: '', sentCount: 1 },
_id: '5887e1d85c873e0011036889',
user: '5a9ac18c7478810ea6c06381',
text: 'Cats make about 100 different sounds. Dogs make only about 10.',
__v: 0,
source: 'user',
updatedAt: '2020-09-03T16:39:39.578Z',
type: 'cat',
createdAt: '2018-01-15T21:20:00.003Z',
deleted: false,
used: true
},
],
ok: true,
status: 200,
curl: `curl 'https://cat-fact.herokuapp.com/facts' -H "user-agent: node-fetch"`
}
Save request to mock
WRITE_MOCK=true DEBUG=true yarn es scripts/test.ts
Go check mock-requests.json
Reply requests from mock
USE_MOCK=true DEBUG=true yarn es scripts/test.ts