| Index: cc/surfaces/surface_factory_unittest.cc
|
| diff --git a/cc/surfaces/surface_factory_unittest.cc b/cc/surfaces/surface_factory_unittest.cc
|
| index 8099815d2298277b62ca6f9451a510a096f33020..6deff8b8d5061fec6d561ae16f06fb242d5d3685 100644
|
| --- a/cc/surfaces/surface_factory_unittest.cc
|
| +++ b/cc/surfaces/surface_factory_unittest.cc
|
| @@ -87,6 +87,7 @@ class SurfaceFactoryTest : public testing::Test, public SurfaceObserver {
|
| void OnSurfaceCreated(const SurfaceInfo& surface_info) override {
|
| EXPECT_EQ(kArbitraryFrameSinkId, surface_info.id().frame_sink_id());
|
| last_created_surface_id_ = surface_info.id();
|
| + last_surface_info_ = surface_info;
|
| }
|
|
|
| void OnSurfaceDamaged(const SurfaceId& id, bool* changed) override {
|
| @@ -155,6 +156,7 @@ class SurfaceFactoryTest : public testing::Test, public SurfaceObserver {
|
| std::unique_ptr<SurfaceFactory> factory_;
|
| LocalFrameId local_frame_id_;
|
| SurfaceId last_created_surface_id_;
|
| + SurfaceInfo last_surface_info_;
|
|
|
| // This is the sync token submitted with the frame. It should never be
|
| // returned to the client.
|
| @@ -669,5 +671,28 @@ TEST_F(SurfaceFactoryTest, DuplicateCopyRequest) {
|
| EXPECT_TRUE(called3);
|
| }
|
|
|
| +// Check whether the SurfaceInfo object is created and populated correctly
|
| +// after the frame submission.
|
| +TEST_F(SurfaceFactoryTest, SurfaceInfo) {
|
| + CompositorFrame frame;
|
| +
|
| + auto render_pass = RenderPass::Create();
|
| + render_pass->SetNew(1, gfx::Rect(5, 6), gfx::Rect(), gfx::Transform());
|
| + frame.render_pass_list.push_back(std::move(render_pass));
|
| +
|
| + render_pass = RenderPass::Create();
|
| + render_pass->SetNew(2, gfx::Rect(7, 8), gfx::Rect(), gfx::Transform());
|
| + frame.render_pass_list.push_back(std::move(render_pass));
|
| +
|
| + frame.metadata.device_scale_factor = 2.5f;
|
| +
|
| + factory_->SubmitCompositorFrame(local_frame_id_, std::move(frame),
|
| + SurfaceFactory::DrawCallback());
|
| + SurfaceId expected_surface_id(factory_->frame_sink_id(), local_frame_id_);
|
| + EXPECT_EQ(expected_surface_id, last_surface_info_.id());
|
| + EXPECT_EQ(2.5f, last_surface_info_.device_scale_factor());
|
| + EXPECT_EQ(gfx::Size(7, 8), last_surface_info_.size_in_pixels());
|
| +}
|
| +
|
| } // namespace
|
| } // namespace cc
|
|
|