模拟服务的返回可观察性是不确定的?

时间:2017-04-25 09:44:09

标签: unit-testing angular typescript jasmine

我正在测试角度组件,以确保它正确调用服务。我这样嘲笑服务:

class mockSocket { 
  getComments() { return Observable.of(['true', 'false'])}
};

describe('CommentTableComponent', () => {
  let component: CommentTableComponent;
  let fixture: ComponentFixture<CommentTableComponent>;
  let mockSock = new mockSocket();

  beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [CommentTableComponent],
      providers: [
        { provide: SocketService, useValue: mockSock }
      imports: [Ng2SmartTableModule]
    })
      .compileComponents();
  }));

在我的组件的ngOnInit事件中,应调用getComments函数并订阅 -

 ngOnInit() {
    this.socketService.getComments('api/jobs/' + line).subscribe(comment => {
    // some logic    
 }

然而,ngOnInit正在抛出错误

  

TypeError:无法读取未定义的属性“subscribe”

在测试中 - 任何想法为什么,我以标准方式返回一个Observable?

0 个答案:

没有答案