Я пытаюсь написать тест для моего компонента, чтобы проверить, что угловая двусторонняя привязка работает.Как проверить значение двунаправленного связывания 2-го значения привязки
С одной стороны, у меня есть тест, который выглядит так (и она проходит):
it('should bind displayed value to the SearchComponent property',() => {
searchComponent.searchBoxValue = 'abc';
searchCompFixture.detectChanges();
expect(inputEl.nativeElement.getAttribute('ng-reflect-model')).toBe('abc');
});
где
searchCompFixture = TestBed.createComponent(SearchComponent);
inputEl = searchCompFixture.debugElement.query(By.css('#search-box-input'));
и
<input
id="search-box-input"
[(ngModel)]="searchBoxValue"\>
С другой стороны, я хочу написать тест, который сначала устанавливает значение входного элемента и проверяет, что значение свойства SearchComponent
изменилось. Моя попытка:
it('should bind SearchComponent property to the displayed value', fakeAsync(() => {
inputEl.nativeElement.value = 'abc';
let evt = new Event('input');
inputEl.nativeElement.dispatchEvent(evt);
tick();
searchCompFixture.detectChanges();
expect(searchComponent.searchBoxValue).toBe('abc');
}));
, но это не работает, потому что searchComponent.searchBoxValue
значение не приготовьтесь. Любые идеи, как это исправить?