See the original report in https://github.com/facebook/react/issues/10772#issuecomment-333242375.

The problem is that SVG is case sensitive, and so naïvely setting `tabIndex` and relying on insensitivity won't work with it.

The good news is it seems like `tabindex` is the only valid [SVG attribute](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute) with this problem. We just missed it because it applies both to HTML and SVG.

I think the fix is to add it back to the whitelist. 
expect(field[valueKey]).toBe(initialValue);
          
          field[valueKey] = changedValue;
          resetModules();
          
          const clientField = await renderIntoDom(
            element,
            field.parentNode,
            true,
          );
          
          
          
          expect(clientField === field).toBe(true);
          
          expect(clientField[valueKey]).toBe(changedValue);
        };
        it('should not blow away user-entered text on successful reconnect to an uncontrolled input', () =>
          testUserInteractionBeforeClientRender(
            <input defaultValue="Hello" />,
          ));
        it('should not blow away user-entered text on successful reconnect to a controlled input', async () => {
          let changeCount = 0;
          await testUserInteractionBeforeClientRender(
            <ControlledInput onChange={() => changeCount++} />,
          );
          
          
          
          expect(changeCount).toBe(0);