Hago una suscripción única que tiene una tubería debounceTime en mi componente onInit :
this.subscriptions.add( this.updateJobs$ .pipe( filter(jobs => !!jobs.length), debounceTime(MyComponent.ListStabilizationTimeInMS), first(), ) .subscribe((jobs: Update[]) => { // some code }) ); Debido a esto, necesito incluir discardPeriodicTasks(); como última línea después de cada prueba fakeAsync , que me parece tediosa. De lo contrario, obtengo el error Error: 1 periodic timer(s) still in the queue. para todas las pruebas.
Traté de crear un afterEach :
afterEach(()=> { discardPeriodicTasks(); }); afterEach(fakeAsync(()=> { discardPeriodicTasks(); })); Pero no funciona y la única forma de pasar las pruebas es agregar manualmente discardPeriodicTasks(); a todos los casos de prueba. Sería genial si se pudiera automatizar.