Angular fakeAsync不适用于Rx asap调度程序

时间:2018-04-02 05:45:18

标签: angular testing rxjs

我有一个模拟服务,返回以下observable。

const mock = {
  get() {
    return of([{id: 3}], asap);
  }
};

 beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [ TestComponent ],
      providers: [{provide: TestService, useValue: mock}]
    })
    .compileComponents();
  }));

在我的组件中,我订阅了服务结果和ngfor:

 ngOnInit() {
    this.TestService.get().subscribe(data => {
      this.data = data;
    });
  }

我试图将fakeAsynctick()一起使用,但这不起作用。测试失败了。

   it('should work...', fakeAsync(() => {
     fixture.detectChanges();
     tick();
     fixture.detectChanges();
     expect(element.querySelectorAll('.list-item').length).toEqual(1);
  }));

我做错了什么?

0 个答案:

没有答案