Я пытаюсь написать модульный тест для одного из выпадающих списков с поиском в верхней части, связанной с ним. Проблема в том, что valueChanges не запускается, и я не могу увидеть filteredValues
для установки утверждения. Я вижу, что окно поиска обновляется значением 'S2', но не вижу значения valueChanges из вызываемого компонента. Любая помощь в том, что я делаю неправильно, очень ценится.
Модульный тест:
it('should search for stores', fakeAsync(() => {
initTest('add');
fixture.detectChanges();
fixture.nativeElement.querySelector('#select').click();
fixture.detectChanges();
const d = overlayContainer.getContainerElement().querySelector('#search');
d.textContent = 'S2';
d.dispatchEvent(new Event('input'));
flush();
fixture.detectChanges();
fixture.whenStable().then(() => {
component.filteredValues.subscribe(value => {
console.log('Value :: ' + JSON.stringify(value));
});
});
}));
Внутренний компонент:
this.search.valueChanges.pipe(takeUntil(this._destroyed)).subscribe(searchText => {
this.filteredValues = of(this.filterValue(searchText));
});