Upgrade zone.js to a compatible version 0.13.4+ for Angular 16 and wrap async tests with fakeAsync and flush to control timing and prevent race conditions. Also, clean up after each using destroyed$.next() and destroyed$.complete()