Testowanie · Senior · Pytanie 33 z 75

Dlaczego przy vi.useFakeTimers() może zawiesić się test, który czeka na promise z setTimeout w środku?

vi.useFakeTimers();
await sleep(1000); // wewnątrz: new Promise(r => setTimeout(r, 1000))

Wyjaśnienie

Uruchom promise, potem await vi.advanceTimersByTimeAsync(1000), potem poczekaj na promise - wersje async dodatkowo opróżniają mikrozadania.

Do poczytania

Błąd w pytaniu

Testowanie · Senior · pytanie 33

Sprawdź się

Rozwiąż test Testowanie · Senior: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test