Предупреждение Vue / Jest: ошибка в следующем тике при тестировании асинхронного поведения - PullRequest
0 голосов
/ 15 октября 2019

Я новичок в шутке и пытаюсь проверить некоторые действия, одно из которых вызывается асинхронно.

Мой тест пройден, но я получаю предупреждение

, и я не знаюпочему.

В моем компоненте у меня есть:

methods: {
...mapActions('userInfo', ['toggleCart', 'resetCart',],),
toggleCart () {
  if (this.user.isLoggedIn) {
    const self = this;
    this.toggleCart(this.id).then(() => {
      self.resetCart(self.id);
    });
  }
},

(эти действия соответствуют тем, которые есть в магазине userInfo).

В моем магазине мои действияявляются:

const actions = {
toggleCart ({ state, }, titleId) {
 if (state.item.isInMyCart) {
   api.del(`${cart-add}/${itemId}`, `${itemId}`);
 } else {
   api.put(`${cart-add}/${itemId}`, `${itemId}`);
 }
},
 resetState ({ commit, }, itemId) {
  api.get(`${cart}/${itemId}`).then((response) => {
  commit('setUserCart', { ...defaultValues, ...response, });
});

},};

И мой тест для этого:

test('resets userCart state asynchronously when toggleCartItem is clicked', () => {
const wrapper = shallowMount(userCart, { store, localVue, });
wrapper.find('a.button.toggle').trigger('click');
wrapper.vm.$nextTick(() => {
  expect(actions.resetCart).toHaveBeenCalled()
    .done();
});

});

Опять тестпроходит, и функционально все работает, но я не понимаю, почему я получаю это предупреждение.

...