Как проверить метод Vue - PullRequest
0 голосов
/ 28 июня 2019

У меня есть компонент Vue JS, который имеет несколько входов / подпорок, и один из них является функцией.Я использую его таким образом, вместо того, чтобы выдавать событие, когда действие происходит, поэтому, когда кнопка нажата, я отправляю уведомление родителю с помощью onClickAction.Все работает нормально, за исключением того, что я не могу заставить работать модульный тест.

  <button @click="clickAction()"></button>

====================================================

  props: {
    onClickAction: { type: Function, required: true }
  },

  methods: {
    clickAction() {
      this.onClickAction();
    }
  }

=========================================================== *

Тестовый файл:

  let wrapper;
  const spy = sinon.spy()

  beforeEach(() => {
    wrapper = shallowMount(WrapperComp, {
      propsData: {
        onClickAction: spy
      }
    });
  });

  it('Should call onClickAction when the button is clicked', () => {
    sinon.spy(wrapper, 'clickAction');
    wrapper.trigger('click');
    expect(wrapper.clickAction).toHaveBeenCalled();
  });

Ошибка:

Должен вызывать onClickAction при нажатии кнопки: TypeError: Попытка обернуть неопределенное свойство clickAction как функцию

Пожалуйста, сообщитекак правильно проверить метод в этом случае.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...