В моем действии vuex я меняю объект окна местоположения. У меня есть действие с изменением местоположения:
async setForm({ rootState, state, commit, dispatch }, formData) {
...
switch (answ.result.type) {
...
case 'redirect':
console.log(answ.data.url);
window.location = answ.data.url;
console.log({ location: window.location.href });
break;
default:
break;
Моя тестовая функция
it('setForm - success, redirect', async done => {
const formData = {
status: 'success',
result: {
type: 'redirect',
data: {
url: 'https://www.google.ru/'
}
}
};
await store.dispatch(
'deposit/setForm',
formData,
{ root: true }
);
await new Promise(resolve => {
setTimeout(() => { resolve(true); }, 1000);
});
expect(window.location.href).toBe('https://www.google.ru/');
});
Но, мое местоположение не изменится.
expect(received).toBe(expected) // Object.is equality
Expected: "https://www.google.ru/"
Received: "http://localhost/"
Как изменить местоположение и тесты это?