我的测试套件:
describe('Component: DummyRestApi',() => { class DummyRestApiTestService { GetAll() { return Rx.Observable.create(observer => { let data:Data[] = []; data.push({ id: 0,data: 'data' }); observer.next(data); observer.complete(); }); } Add(data) { } } let fixture; let myMockWindow:Window; // ToDo use the mocks beforeEach(() => { myMockWindow = <any> {location: <any> {hostname: '127.0.0.1'}}; TestBed.configureTestingModule({ declarations: [DummyRestApiComponent],providers: [ // ServerAddressResolverService,DummyRestApiComponent,// ConfigurationService,{provide: DummyRestApiService,useClass: DummyRestApiTestService},// {provide: Window,useValue: myMockWindow} ],imports: [FormsModule,HttpModule] }); TestBed.compileComponents().catch(error => console.error(error)); // addProviders([ // DummyRestApiComponent,// {provide: DummyRestApiService,// ]); }); describe('Initializing',() => { beforeEach(async(() => { console.log('Compiling'); TestBed.compileComponents().catch(error => console.error(error)); console.log('Compiling again'); })); it('should create an instance',async(() => { var fixture = TestBed.createComponent(DummyRestApiComponent); fixture.detectChanges(); expect(fixture.debugElement.componentInstance).toBeTruthy(); } )); });
Angular 2.0.0-RC5