Я делаю одноразовую подписку с debounceTime
каналом на моем компоненте onInit
:
this.subscriptions.add(
this.updateJobs$
.pipe(
filter(jobs => !!jobs.length),
debounceTime(MyComponent.ListStabilizationTimeInMS),
first(),
)
.subscribe((jobs: Update[]) => {
// some code
})
);
Из-за этого мне нужно включать discardPeriodicTasks();
в качестве последней строки после каждого fakeAsync
тесты, которые я считаю утомительными. В противном случае я получаю ошибку Error: 1 periodic timer(s) still in the queue.
для всех тестов.
Я пытался создать afterEach
:
afterEach(()=> {
discardPeriodicTasks();
});
afterEach(fakeAsync(()=> {
discardPeriodicTasks();
}));
Но это не работает и единственный способ пройти тесты это вручную добавить discardPeriodicTasks();
ко всем тестам. Было бы здорово, если бы это можно было автоматизировать.