如何使用茉莉花来模拟window.click(event)

时间:2018-09-04 18:40:53

标签: unit-testing jasmine

我需要为此功能编写一个单元测试:

  public onClick(): void {
    $(window).click((event: any) => {
      if (event.target.href && event.target.href.search(/MOBWORKERMAP-/) !== -1) {
        this.buildCall('createPopup', event.target.href);
        this.setWindowLocation();
      }
    });
  }

我想知道如何模拟$(window).click并将事件传递给它吗?

1 个答案:

答案 0 :(得分:0)

茉莉花间谍对于模拟函数调用很有用。这是茉莉花的间谍文件。

https://jasmine.github.io/api/2.6/global.html#spyOn

var spyEvent = spyOnEvent('#AN_ELEMENT', 'click')
$('#AN_ELEMENT').click()
expect('click').toHaveBeenTriggeredOn('#AN_Element')