茉莉花单元测试:this.wvInstance.docViewer.getDocument不是函数

问题描述 投票:0回答:1

我正在测试在我的组件中具有以下调用的方法:

createBar() {
    const pageWidth = this.wvInstance.docViewer.getDocument();
}

我正在尝试模拟整个通话。 getDocument()返回一个CoreControls.Document,它仅由两个字符串组成。

mockViewerInstance中的[beforeEach()

mockWebViewerInstance = jasmine.createSpyObj('WebViwerInstance', {
  docViewer: {
    getDocument: function() : CoreControls.Document {
      return new CoreControls.Document('', '');
    }
  }
});

测试:

  it('should create the nav bar', () => {
    component.wvInstance = mockWebViewerInstance;
    component.createBar();
  });

我不断收到错误:TypeError: this.wvInstance.docViewer.getDocument is not a function。有人知道这是为什么吗?

javascript angular unit-testing jasmine
1个回答
0
投票

尝试一下:

 component.wvInstance = {docViewer: {getDocument: jasmine.createSpy('getDocument')}};
© www.soinside.com 2019 - 2024. All rights reserved.