We missed this because Flow wasn't being run properly on Travis but now that it is, it's clear that #7716 introduced a bunch of new Flow failures. Most of these shouldn't be too bad and I like to say "you break it you buy it" so this one is for you @Aweary :)

There were a couple other pre-existing Flow issues that @vjeux is going to fix, so mostly this should just be the TestRenderer issues.

);
    if (!nextChildren && !prevChildren) {
      return;
    }
    var updates = null;
    var name;
    
    
    var nextIndex = 0;
    var lastIndex = 0;
    
    var nextMountIndex = 0;
    var lastPlacedNode = null;
    for (name in nextChildren) {
      if (!nextChildren.hasOwnProperty(name)) {
        continue;
      }
      var prevChild = prevChildren && prevChildren[name];
      var nextChild = nextChildren[name];
      if (prevChild === nextChild) {
        updates = enqueue(
          updates,
          this.moveChild(prevChild, lastPlacedNode, nextIndex, lastIndex)
        );
        lastIndex = Math.max(prevChild._mountIndex, lastIndex);
        prevChild._mountIndex = nextIndex;
      } else {
        if (prevChild) {
          
          lastIndex = Math.max(prevChild._mountIndex, lastIndex);