Я пишу Angular модульное тестирование, с которым сталкиваюсь с ошибкой. Если я напишу в BeFalsy (), тест провалится. Но если я напишу not.toBe (true), тест будет работать.
Может кто-нибудь мне помочь.
let fixture: ComponentFixture<RootComponent>;
let debugElement: DebugElement;
beforeEach(async () => {
fixture = TestBed.createComponent(RootComponent);
await executeChangeDetection(fixture);
component = fixture.componentInstance;
debugElement = fixture.debugElement.query(By.css('#overlay'));
});
it('should hide overlay and reset timeout', () => {
const appState = new ApplicationStateService(null as any);
appState.timeout = false;
component.isTimeoutOverlayVisible = appState.timeout;
fixture.detectChanges();
expect(debugElement.nativeElement).toBeFalsy();
});
toBeFalsy () тест не пройден, но как придет сообщение.
Expected <overlay id="overlay">...</overlay> to be falsy.
not.toBe (true) тест будет работать.