Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2196)

Unified Diff: cc/trees/layer_tree_host_impl_unittest.cc

Issue 2880023002: cc::SurfaceDependencyTracker should not crash when a Display goes away (Closed)
Patch Set: Fix LayerTreeHostImpl unit tests Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/test/begin_frame_source_test.cc ('k') | components/viz/frame_sinks/mojo_frame_sink_manager.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/trees/layer_tree_host_impl_unittest.cc
diff --git a/cc/trees/layer_tree_host_impl_unittest.cc b/cc/trees/layer_tree_host_impl_unittest.cc
index a9e5a559a68a02739e4a0aea73abb2d1255eccb2..de683f838311e4290aae25404994f1ac047e2633 100644
--- a/cc/trees/layer_tree_host_impl_unittest.cc
+++ b/cc/trees/layer_tree_host_impl_unittest.cc
@@ -128,6 +128,7 @@ class LayerTreeHostImplTest : public testing::Test,
LayerTreeSettings DefaultSettings() {
LayerTreeSettings settings;
+ settings.enable_surface_synchronization = true;
settings.minimum_occlusion_tracking_size = gfx::Size();
settings.renderer_settings.texture_id_allocation_chunk_size = 1;
settings.renderer_settings.buffer_to_texture_target_map =
@@ -3453,24 +3454,33 @@ TEST_F(LayerTreeHostImplTest, MouseMoveAtWithDeviceScaleOf2) {
SetupMouseMoveAtWithDeviceScale(2.f);
}
-// This test verifies that only SurfaceLayers in the viewport are included
-// in CompositorFrameMetadata's |activation_dependencies|.
-TEST_F(LayerTreeHostImplTest, EmbeddedSurfacesInMetadata) {
+// This test verifies that only SurfaceLayers in the viewport and have fallbacks
+// that are different are included in CompositorFrameMetadata's
+// |activation_dependencies|.
+TEST_F(LayerTreeHostImplTest, ActivationDependenciesInMetadata) {
SetupScrollAndContentsLayers(gfx::Size(100, 100));
host_impl_->SetViewportSize(gfx::Size(50, 50));
LayerImpl* root = host_impl_->active_tree()->root_layer_for_testing();
- std::vector<SurfaceId> children = {MakeSurfaceId(FrameSinkId(1, 1), 1),
- MakeSurfaceId(FrameSinkId(2, 2), 2),
- MakeSurfaceId(FrameSinkId(3, 3), 3)};
- for (size_t i = 0; i < children.size(); ++i) {
+ std::vector<SurfaceId> primary_surfaces = {
+ MakeSurfaceId(FrameSinkId(1, 1), 1), MakeSurfaceId(FrameSinkId(2, 2), 2),
+ MakeSurfaceId(FrameSinkId(3, 3), 3)};
+
+ std::vector<SurfaceId> fallback_surfaces = {
+ MakeSurfaceId(FrameSinkId(4, 4), 1), MakeSurfaceId(FrameSinkId(4, 4), 2),
+ MakeSurfaceId(FrameSinkId(4, 4), 3)};
+
+ for (size_t i = 0; i < primary_surfaces.size(); ++i) {
std::unique_ptr<SurfaceLayerImpl> child =
SurfaceLayerImpl::Create(host_impl_->active_tree(), i + 6);
child->SetPosition(gfx::PointF(25.f * i, 0.f));
child->SetBounds(gfx::Size(1, 1));
child->SetDrawsContent(true);
child->SetPrimarySurfaceInfo(
- SurfaceInfo(children[i], 1.f /* device_scale_factor */,
+ SurfaceInfo(primary_surfaces[i], 1.f /* device_scale_factor */,
+ gfx::Size(10, 10) /* size_in_pixels */));
+ child->SetFallbackSurfaceInfo(
+ SurfaceInfo(fallback_surfaces[i], 1.f /* device_scale_factor */,
gfx::Size(10, 10) /* size_in_pixels */));
root->test_properties()->AddChild(std::move(child));
}
@@ -3483,11 +3493,13 @@ TEST_F(LayerTreeHostImplTest, EmbeddedSurfacesInMetadata) {
host_impl_->compositor_frame_sink());
const CompositorFrameMetadata& metadata =
fake_compositor_frame_sink->last_sent_frame()->metadata;
- EXPECT_THAT(metadata.activation_dependencies,
- testing::UnorderedElementsAre(children[0], children[1]));
+ EXPECT_THAT(
+ metadata.activation_dependencies,
+ testing::UnorderedElementsAre(primary_surfaces[0], primary_surfaces[1]));
EXPECT_THAT(
metadata.referenced_surfaces,
- testing::UnorderedElementsAre(children[0], children[1], children[2]));
+ testing::UnorderedElementsAre(fallback_surfaces[0], fallback_surfaces[1],
+ fallback_surfaces[2]));
}
TEST_F(LayerTreeHostImplTest, CompositorFrameMetadata) {
« no previous file with comments | « cc/test/begin_frame_source_test.cc ('k') | components/viz/frame_sinks/mojo_frame_sink_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698