何らかの理由で、これら 2 つの仕様は合格していますが、2 番目の仕様は、サービスからの非同期データを使用して、テンプレート内で補間をテストしています。コールバック関数を async でラップする必要がないのはなぜですか?
describe('SaangComponent', () => {
let component: SaangComponent;
let fixture: ComponentFixture<SaangComponent>;
let compiled: HTMLElement;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ SaangComponent ],
providers: [
{provide: GetSomeService, useValue: getSomeServiceMock}
]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(SaangComponent);
component = fixture.componentInstance;
compiled = fixture.debugElement.query(By.css('h1')).nativeElement;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
it('should update the h1 attribute with the title', () => {
fixture.detectChanges();
const expectedText = compiled.innerHTML;
expect(expectedText).toEqual('lord');
});
});
const getSomeServiceMock = {
getSomeData() {
return Observable.of({title: 'lord'});
}
};