Comments (9)
That'll work, but limiting responding to n calls I think is a nice feature to add anyway
from fetch-mock.
done
from fetch-mock.
Easiest way would be to manage the state outside the mock.
let called = false;
fetchMock.mock('http://test.com', function () {
if (called) {
return {valid: 'response', after: 'error'};
}
called = true;
return 500;
})
(If that doesn't work it's a bug, so let me know and I'll fix it if it fails)
If you have any thoughts on what a nicer API for this sort of behaviour would look like I'm happy to consider adding it.
from fetch-mock.
I could accept an additional parameter specifying the number of times a mock should respond, but I'd be concerned about adding more complexity to the API and docs (which are already long enough IMO)
from fetch-mock.
Yeah the managing the state outside works, I was just wondering if I was overlooking something 😄
The times
parameter would make this easier, but I am not sure if that usecase is so common that it justifies it.
from fetch-mock.
It's a feature I'd like to add anyway, though it does get a little bit tricky to implement in some of the details because it's permissable for calls to fall through from one route to another. Will have a go
from fetch-mock.
Some failing tests written https://github.com/wheresrhys/fetch-mock/compare/times, but the edge cases are quite problematic
from fetch-mock.
i have the same requirement and i am calling fetchMock.restore()
before mocking another call to the same url and it seems to be working fine. Is this also okay?
from fetch-mock.
I would like to ask for this feature too, we can use something similar to Nock https://github.com/node-nock/nock#repeat-response-n-times
For example, this is useful when testing polling requests, first 3rd requests are the same, but 4th is different
from fetch-mock.
Related Issues (20)
- Provide RequestInit object to native fetch on Safari HOT 1
- Problem with fetch-mock and HMR HOT 3
- Update node-fetch dependency to v3.x.x HOT 5
- Querystring is deprecated
- Unable to use fetch-mock as ES6 import HOT 10
- fetch-mock: No fallback response defined for GET to https://jsonmock.hackerrank.com/api/stocks/?date=1-January-2002
- [Bug] Using fetch-mock with the decorator function results in internal error HOT 5
- When a matcher fails because a header matches the key but not the value, other matchers aren't considered
- Returning different values for different requests on the same URL HOT 3
- Response always undefined in .calls? HOT 1
- regenerator global Function call throws CSP unsafe-eval error HOT 2
- Typescript: FetchMockSandbox and native fetch have incompatible types HOT 1
- [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" HOT 1
- Response.error() is not being treated as a response HOT 1
- Allow access to `express`-style path parameters in mocked endpoints HOT 2
- done() not recognised matched requests HOT 1
- fetch-mock not working after update to Node v18 HOT 4
- "SyntaxError: Cannot use import statement outside a module" when importing fetchMock from fetch-mock HOT 2
- es5/client-legacy-bundle.js uses es6 syntax resulting in errors for older browsers HOT 1
- does it support import.meta.hot?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fetch-mock.