У меня есть боковое навигационное меню в моем тестовом проекте, и я хочу написать простой тест, чтобы проверить, открывается ли sidenav ( переключает ), когда я нажимаю кнопку. Сам AppComponent ссылается на боковую панель через свою sidenavbar зависимостей.
it('when button is clicked, sidenav appears', async(() => {
const fixture = TestBed.createComponent(AppComponent);
const component = fixture.componentInstance;
let sidenav_button = fixture.debugElement.nativeElement.querySelector('button');
fixture.detectChanges();
expect(component.sidenavbar.opened).toBeFalsy();
spyOn(component.sidenavbar, 'toggle');
sidenav_button.click();
fixture.whenStable().then(() => {
fixture.detectChanges();
expect(component.sidenavbar.toggle).toHaveBeenCalled();
});
прямо сейчас говорится, что метод toggle () не существует, чтобы шпионить за ним. Я уверен, что это действительно так.