Задать вопрос
@seredaes

Как побороть ошибку в Vue-test?

5edf712acf99b066919321.png

Я подключаю компонент и никакой тест даже еще не запускаю...а пишет ошибку как на скриншоте.
Подскажите пожалуйста, как правильно побороть ошибку или как переделать компонент?
  • Вопрос задан
  • 200 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 3
@UPSA
anykey. Я не программист, я просто ленивый.
Не видя код компонента ... тяжело ))) для меня ))) и самому интересно ))) на callback функциях я встал )))
Почему
window.$axios.get....
А не
import axios from 'axios';
...
axios.get

callback функция не определена.... наверно объект не тот )))
Ответ написан
profesor08
@profesor08
Просто используй fetch, с ним проще, удобнее, легче. Ловить ошибки и обрабатывать результат кайф.

Сейчас, судя по скриншотам, у тебя говнокодище, если все таки хочешь использовать аксиос, то подключай его как написано в документации.

Ну, а что касается теста, то тест ничего не знает про объект window, так как выполняется в среде nodejs. Что там может быть в этом window не понятно. Живи с этим и пиши код нормально, даже если до тебя писали говнокод.
import axios from 'axios';

async function getUser() {
  try {
    const response = await axios.get('/user?ID=12345');
    console.log(response);
  } catch (error) {
    console.error(error);
  }
}
Ответ написан
@seredaes Автор вопроса
В общем траблу решил так:

// MOCK AXIOS REQUESTS
    axios.get.mockImplementation(url => {
      if (url === "/offers") {
        return Promise.resolve({
          data: {
            name: 12
          }
        });
      } else if (url === "/publishers") {
        return Promise.resolve({
          data: {
            name: 12
          }
        });
      }
    });


И тест отработал отлично !!!
Может кому пригодиться :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы