Chromium Code Reviews| Index: cc/trees/layer_tree_host_unittest.cc |
| diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc |
| index e75b3e9a2ba4a0324fee2176942bc83c2080f5a7..bf61c14ecf916c9717056dc8acdfc9ceea461d46 100644 |
| --- a/cc/trees/layer_tree_host_unittest.cc |
| +++ b/cc/trees/layer_tree_host_unittest.cc |
| @@ -6378,5 +6378,42 @@ class LayerTreeHostTestDestroyWhileInitializingOutputSurface |
| MULTI_THREAD_TEST_F(LayerTreeHostTestDestroyWhileInitializingOutputSurface); |
| +class LayerTreeHostTestPaintedDeviceScaleFactor : public LayerTreeHostTest { |
| + class PaintedScaleSwapPromise : public SwapPromise { |
| + public: |
| + PaintedScaleSwapPromise() {} |
| + ~PaintedScaleSwapPromise() override {} |
| + void DidActivate() override {} |
| + void DidSwap(CompositorFrameMetadata* metadata) override { |
| + EXPECT_EQ(2.0f, metadata->device_scale_factor); |
|
enne (OOO)
2015/10/23 21:21:25
Maybe include a device scale factor on the composi
oshima
2015/10/23 22:05:02
I added additional check in SwapBuffersOnThread.
|
| + } |
| + void DidNotSwap(DidNotSwapReason reason) override {} |
| + int64 TraceId() const override { return 0; } |
| + }; |
| + |
| + protected: |
| + void BeginTest() override { |
| + layer_tree_host()->SetPaintedDeviceScaleFactor(2.0f); |
| + EXPECT_EQ(1.0f, layer_tree_host()->device_scale_factor()); |
| + PostSetNeedsCommitToMainThread(); |
| + } |
| + |
| + void CommitCompleteOnThread(LayerTreeHostImpl* host_impl) override { |
| + int frame = host_impl->active_tree()->source_frame_number(); |
| + if (frame == -1) { |
| + host_impl->active_tree()->QueuePinnedSwapPromise( |
| + make_scoped_ptr(new PaintedScaleSwapPromise())); |
| + } |
| + } |
| + |
| + void SwapBuffersOnThread(LayerTreeHostImpl* host_impl, bool result) override { |
| + EndTest(); |
| + } |
| + |
| + void AfterTest() override {} |
| +}; |
| + |
| +MULTI_THREAD_TEST_F(LayerTreeHostTestPaintedDeviceScaleFactor); |
| + |
| } // namespace |
| } // namespace cc |