As far as my understanding goes from reading the Angular testing docs, calling tick()
flushes both (supported) macro tasks, and micro-task queues within the fakeAsync
block. In which case, under the hood, I assume, calling tick()
will be the same as having some additional calls + calling flushMicrotasks()
.
Question is, is there any case where I should use:
it('should pass', fakeAsync(() => {
// given some setup...
doSomethingAsynchronous();
flushMicrotasks();
// do some assertions...
}));
instead of
it('should pass', fakeAsync(() => {
// given some setup...
doSomethingAsynchronous();
tick();
// do some assertions...
}));
❓