Как написать асинхронный редукционный тест с входом в Firebase? - PullRequest
0 голосов
/ 28 сентября 2018

Я не знаю, как написать тест для этого типа проблемы

auth.js

export const onLogin = ({email, password}) => async dispatch => {
  try {
    const user = await firebase.auth().signInWithEmailAndPassword(email, password)
    dispatch(loginSuccess(user))
  } catch (error) {
    console.error(error)
    dispatch(loginError(error))
  }
}

и что у меня есть в моем auth.test.js

it(`creates ${LOGIN_SUCCESS} when login is successful`, () => {

const expectedAction = {
  type: LOGIN_SUCCESS,
  payload: {user: {email: 'test@test.com', emailVerified: true, displayName: 'test'}},
}
const store = mockStore({type: null, payload: null})

const form = {email: 'test@test.com', password: 'test'}

return store.dispatch(actions.onLogin(form)).then(() => {
  expect(store.getActions()).toEqual(expectedAction)
  })
})

Кто-нибудь может мне помочь?

...