Keeping track of descendants that draw content instead of recalcualting

This is a required for removing Render Surface creation from CalcDrawProps.

BUG=386788

Review URL: https://codereview.chromium.org/373113003

Cr-Commit-Position: refs/heads/master@{#288740}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288740 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/cc/trees/occlusion_tracker_unittest.cc b/cc/trees/occlusion_tracker_unittest.cc
index 1a6529b..e6464a2 100644
--- a/cc/trees/occlusion_tracker_unittest.cc
+++ b/cc/trees/occlusion_tracker_unittest.cc
@@ -133,6 +133,8 @@
   }
 
   static void DestroyLayer(LayerPtrType* layer) { *layer = NULL; }
+
+  static void RecursiveUpdateNumChildren(LayerType* layerType) {}
 };
 
 struct OcclusionTrackerTestImplThreadTypes {
@@ -162,6 +164,10 @@
   }
 
   static void DestroyLayer(LayerPtrType* layer) { layer->reset(); }
+
+  static void RecursiveUpdateNumChildren(LayerType* layer) {
+    FakeLayerTreeHostImpl::RecursiveUpdateNumChildren(layer);
+  }
 };
 
 int OcclusionTrackerTestImplThreadTypes::next_layer_impl_id = 1;
@@ -304,6 +310,7 @@
     DCHECK(root == root_.get());
     DCHECK(!root->render_surface());
 
+    Types::RecursiveUpdateNumChildren(root);
     LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs(
         root, root->bounds(), &render_surface_layer_list_impl_);
     inputs.can_adjust_raster_scales = true;