如何在 ng2 中测试订阅 karma
How to test subscribe with karma in ng2
从服务中我得到了一些流,所以在我的组件中我得到了这样的信息:
this.service.getSome().subscribe(x => this.invokeHere(x));
在我的规格文件中,我有这样的东西
beforeEach(() => {
fixture = TestBed.createComponent(SomeComponent);
component = fixture.componentInstance;
service = fixture.debugElement.injector.get(Service);
spy = spyOn(service, 'getSome')
.and.returnValue(Observable.of(serviceStub));
fixture.detectChanges();
});
it('test observable', inject([MockBackend], (mockBackend: MockBackend) => {
mockBackend.connections.subscribe((connection: MockConnection) => {
connection.mockError(new Error());
});
service.someRequest()
.subscribe(() => { },(err) => {
// your test
});
}));
从服务中我得到了一些流,所以在我的组件中我得到了这样的信息:
this.service.getSome().subscribe(x => this.invokeHere(x));
在我的规格文件中,我有这样的东西
beforeEach(() => {
fixture = TestBed.createComponent(SomeComponent);
component = fixture.componentInstance;
service = fixture.debugElement.injector.get(Service);
spy = spyOn(service, 'getSome')
.and.returnValue(Observable.of(serviceStub));
fixture.detectChanges();
});
it('test observable', inject([MockBackend], (mockBackend: MockBackend) => {
mockBackend.connections.subscribe((connection: MockConnection) => {
connection.mockError(new Error());
});
service.someRequest()
.subscribe(() => { },(err) => {
// your test
});
}));