【问题标题】:Testing service which depends on ContainerRef依赖于 ContainerRef 的测试服务
【发布时间】:2019-06-21 11:27:49
【问题描述】:

我正在尝试对应该在任何工作之前获取 ContainerRef 的服务进行测试,并且以下方法将动态组件插入或删除到此容器中。

我无法测试我的任何方法,因为它们需要设置 ContainerRef

this.containerRef.clear 不是函数

但是,我不明白如何模拟或存根此ContainerRef

【问题讨论】:

    标签: angular jasmine karma-runner stub angular-test


    【解决方案1】:

    我最终得到了

    service = TestBed.get(Service);
    
    service.containerRef = {
        clear(): void {
        },
        insert(viewRef: ViewRef, index?: number): void {
        },
        detach(index?: number): void {
        }
    } as ViewContainerRef;
    
    spyOn(service.containerRef, 'clear');
    spyOn(service.containerRef, 'insert');
    spyOn(service.containerRef, 'detach');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-10
      • 1970-01-01
      • 2017-10-31
      • 1970-01-01
      • 2014-09-04
      • 2012-10-27
      • 1970-01-01
      • 2013-06-11
      相关资源
      最近更新 更多