Sandbox: https://codesandbox.io/s/cranky-kapitsa-op3jh

Repro: type "a" and then after a second "b"

Expected: Eventually you'll see "ab" in all fields. Pending "..." indicator goes away.

Actual: You'll keep seeing "a" in low pri field. Pending "..." indicator is stuck.
);
        expect(Scheduler).toFlushAndYieldThrough(['Count: 0', 'Sync effect']);
        expect(ReactNoop.getChildren()).toEqual([span('Count: 0')]);
      }).toErrorDev(['An update to Counter ran an effect']);
      expect(onInteractionScheduledWorkCompleted).toHaveBeenCalledTimes(0);
      
      
      ReactNoop.flushDiscreteUpdates();
      ReactNoop.discreteUpdates(() => {
        
        ReactNoop.batchedUpdates(() => {
          _updateCount(2);
        });
      });
      expect(Scheduler).toHaveYielded(['Will set count to 1']);
      expect(() => {
        expect(Scheduler).toFlushAndYield(['Count: 2']);
      }).toErrorDev([
        'An update to Counter ran an effect',
        'An update to Counter ran an effect',
      ]);
      expect(ReactNoop.getChildren()).toEqual([span('Count: 2')]);
      expect(onInteractionScheduledWorkCompleted).toHaveBeenCalledTimes(1);
      expect(onWorkCanceled).toHaveBeenCalledTimes(0);
    });
    it(
      'in legacy mode, useEffect is deferred and updates finish synchronously ' +
        '(in a single batch)',
      () => {
        function Counter(props) {