title: fixture.whenStable() never resolves when testing my component
body: <p>How do I debug the testing situation where <code>await fixture.whenStable()</code> never resolves.</p>
  
  <p>Put another way: what does this indicate about my component?</p>
  
  <p>I have a spec that looks like this:</p>
  
  <pre><code>it('should open the modal when ?series is navigated to', async () =&gt; {
      const { instance, fixture } = await _render();
      const openSpy = spyOn(instance, 'openModal');
      expect(openSpy).not.toHaveBeenCalled();
      _updateQuery({ series: '' });
      fixture.detectChanges();
      // await fixture.whenStable(); // &lt;- never resolves
      expect(openSpy).toHaveBeenCalled(); // &lt;- fails
  });
  </code></pre>
  
  <p><em>(I need to use an actual async function to work with my testing library.)</em></p>
  
  <p>Calling <code>await fixture.whenStable()</code> hangs no matter where in the function body I put it – seems to indicate that the issue is present right when the component is loaded.</p>
  
  <p>I don't really understand what <code>whenStable()</code> even does. Perhaps if I did I could figure this out without help.</p>