Я пытаюсь написать тесты для страницы со списком элементов и поисковым фильтром. Поисковый фильтр фильтрует список элементов на основе того, что вводится в текстовый ввод поискового фильтра. Он работает, испуская событие, когда значение ввода текста изменяется. Это событие обсуждается с использованием Rx Js debounceTime. Компонент поискового фильтра также имеет кнопку для очистки текста поиска.
private searchStringChanged: Subject<string> = new Subject<string>();
this.searchStringChanged.pipe(
debounceTime(250),
).subscribe((searchString: string) => {
this.filterChange.emit(searchString);
});
public handleClearInput() {
this.searchString = '';
this.searchStringChanged.next(this.searchString);
}
Моя проблема заключается в том, что я не вижу результат очистки ввода текста в моих тестах Cypress. Я хотел бы очистить поисковый фильтр перед каждым тестом, поэтому я начинаю каждый тест с полного списка элементов:
beforeEach(() => {
cy.clock();
searchFilter.getTextInput().clear();
cy.clock().then(clock => {
clock.tick(1000);
clock.restore();
});
});
Я пробовал несколько вариантов приведенного выше кода безрезультатно.
Использование: Cypress 4.3.0, Rx Js: 6.5. 3