J'apprends comment tester et utiliser quelques exemples comme ligne directrice J'essaie de me moquer d'un post de connexion. L'exemple utilisé pour récupérer l'appel http mais j'utilise axios. C'est l'erreur que je reçoiscomment tester reac-saga axios poster
Délai d'attente - rappel Async n'a pas été invoquée dans délai spécifié par jasmine.DEFAULT_TIMEOUT_INTERVAL
Toutes les réponses à cette erreur a dû faire avec fetch, comment dois-je faire cela avec Axios
./saga
const encoder = credentials => Object.keys(credentials).map(key => `${encodeURIComponent(key)}=${encodeURIComponent(credentials[key])}`).join('&')
const postLogin = credentials => {
credentials.grant_type = 'password'
const payload = {
method: 'post',
headers: config.LOGIN_HEADERS,
data: encoder(credentials),
url: `${config.IDENTITY_URL}/Token`
}
return axios(payload)
}
function * loginRequest (action) {
try {
const res = yield call(postLogin, action.credentials)
utils.storeSessionData(res.data)
yield put({ type: types.LOGIN_SUCCESS, data: res.data })
} catch (err) {
yield put({ type: types.LOGIN_FAILURE, err })
}
}
function * loginSaga() {
yield takeLatest(types.LOGIN_REQUEST, loginRequest)
}
export default loginSaga
./login-test
const loginReply = {
isAuthenticating: false,
isAuthenticated: true,
email: '[email protected]',
token: 'access-token',
userId: '1234F56',
name: 'Jane Doe',
title: 'Tester',
phoneNumber: '123-456-7890',
picture: 'pic-url',
marketIds: [1, 2, 3]
}
describe('login-saga',() => {
it('login identity user', async (done) => {
// Setup Nock
nock(config.IDENTITY_URL)
.post('/Token', { userName: '[email protected]', password: 'xxxxx' })
.reply(200, loginReply)
// Start up the saga tester
const sagaTester = new SagaTester({})
sagaTester.start(loginSaga)
// Dispatch the event to start the saga
sagaTester.dispatch({type: types.LOGIN_REQUEST})
// Hook into the success action
await sagaTester.waitFor(types.LOGIN_SUCCESS)
// Check the resulting action
expect(sagaTester.getLatestCalledAction()).to.deep.equal({
type: types.LOGIN_SUCCESS,
payload: loginReply
})
})
})
comment les générateurs fonctionnent-ils? – JoseAPL
première fois en les utilisant si encore apprendre – texas697