Comments (8)
@radelcom could you explain more how you got that package to work? I'm attempting to use apisauce
then grab the axiosInstance
from it, then use that to pass into in my MockAdapter
but I keep getting responses that look like this:
{ duration: 22,
problem: 'UNKNOWN_ERROR',
ok: false,
status: null,
headers: null,
config: null,
data: null }
Any further insight on how you were able to do this would be helpful. Thanks!
from apisauce.
Ok, just tried it.
Here's a sample jest
test:
import MockAdapter from 'axios-mock-adapter'
test('mock adapter', async () => {
const api = API.create()
const mock = new MockAdapter(api.axiosInstance)
mock.onGet('/rate_limit').reply(201, {
x: 'hello'
})
const response = await api.getRate()
expect(response.ok).toBe(true)
expect(response.status).toBe(201)
expect(response.data).toEqual({ x: 'hello' })
})
To make this work, I have my api
expose the axiosInstance
.
import apisauce from 'apisauce'
const create = (baseURL = 'https://api.github.com/') => {
const api = apisauce.create({
baseURL,
headers: {
'Cache-Control': 'no-cache'
},
timeout: 10000
})
const getRate = () => api.get('rate_limit')
return {
getRate,
axiosInstance: api.axiosInstance
}
}
// let's return back our create method as the default.
export default {
create
}
from apisauce.
Heyo!
I personally do all my mocking at the redux-saga
level. It makes it trivial to do that async mocking stuff there.
I don't like to do a lot in my action creators. Just create actions.
I'll keep this issue open though. Maybe others have good suggestions?
Also have a look at how people mock axios. This library is just a thin wrapper around that.
from apisauce.
If you can put up a sample repo, I'd be happy to take a closer look. I had a quick look https://github.com/ctimmerm/axios-mock-adapter#example and it looks like it should be compatible.
from apisauce.
@skellock I just used this example 5 years later 😆
from apisauce.
@skellock tx for giving me some hint. For anyone still looking for solution to this. I was able to resolve my problems using axios-mock-adapter package. Pretty straight forward and got me up to speed right away.
from apisauce.
@skellock I have tried to use axios-mock-adapter as well but I can't make it to work. Could you provide a sample example?
from apisauce.
I haven't used it yet.
from apisauce.
Related Issues (20)
- Cannot read properties of undefined (reading 'status') HOT 7
- Request sends Twice returns HTTP 500 Error HOT 2
- doesn't support formData HOT 4
- How to add file CA Certificate https?
- Question about response type declaration HOT 5
- Vulnerability introduced by package follow-redirects HOT 1
- Do I Need To Set Headers Max-Age?
- is there any schedule to upgrade the axios? HOT 4
- Latest version support for Axios ? HOT 2
- addAsyncRequestTransform not tiggering in iOS
- Remove request/response transform. HOT 1
- got 2 test case failed in unit test HOT 1
- TypeError: axios.create is not a function error HOT 3
- Upload image not working on 3.0.1 HOT 3
- error TypeError: axios.isCancel is not a function HOT 1
- create is not a function HOT 3
- Weird behaviour with urls after updating to Xcode 15 HOT 6
- Is there a way to redo a request if failed?
- axiosInstance doesn't inherit default headers from apisauce
- Singleton concern on addResponseTransform HOT 2
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 apisauce.