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. 
return renderIntoDom(element, div, false, errorCount);
};
const clientRenderOnServerString = async (element, errorCount = 0) => {
  const markup = await renderIntoString(element, errorCount);
  resetModules();
  var domElement = document.createElement('div');
  domElement.innerHTML = markup;
  let serverNode = domElement.firstChild;
  const firstClientNode = await renderIntoDom(
    element,
    domElement,
    true,
    errorCount,
  );
  let clientNode = firstClientNode;
  
  while (serverNode || clientNode) {
    expect(serverNode != null).toBe(true);
    expect(clientNode != null).toBe(true);
    expect(clientNode.nodeType).toBe(serverNode.nodeType);
    
    
    
    expect(serverNode === clientNode).toBe(true);
    serverNode = serverNode.nextSibling;
    clientNode = clientNode.nextSibling;
  }
  return firstClientNode;
};
function BadMarkupExpected() {}