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

Side by Side Diff: services/ui/ws/frame_generator_unittest.cc

Issue 2470143006: Remove dependency on SurfaceManager in FrameGenerator (Closed)
Patch Set: Remove a couple of bad std::moves Created 4 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « services/ui/ws/frame_generator.cc ('k') | services/ui/ws/platform_display.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "services/ui/ws/frame_generator.h" 5 #include "services/ui/ws/frame_generator.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/test/test_message_loop.h" 9 #include "base/test/test_message_loop.h"
10 #include "cc/quads/render_pass.h" 10 #include "cc/quads/render_pass.h"
11 #include "cc/quads/shared_quad_state.h" 11 #include "cc/quads/shared_quad_state.h"
12 #include "services/ui/surfaces/display_compositor.h"
13 #include "services/ui/ws/ids.h" 12 #include "services/ui/ws/ids.h"
14 #include "services/ui/ws/platform_display_init_params.h" 13 #include "services/ui/ws/platform_display_init_params.h"
15 #include "services/ui/ws/server_window.h" 14 #include "services/ui/ws/server_window.h"
16 #include "services/ui/ws/server_window_compositor_frame_sink_manager.h" 15 #include "services/ui/ws/server_window_compositor_frame_sink_manager.h"
17 #include "services/ui/ws/test_server_window_delegate.h" 16 #include "services/ui/ws/test_server_window_delegate.h"
18 #include "services/ui/ws/test_utils.h" 17 #include "services/ui/ws/test_utils.h"
19 #include "testing/gtest/include/gtest/gtest.h" 18 #include "testing/gtest/include/gtest/gtest.h"
20 19
21 namespace ui { 20 namespace ui {
22 namespace ws { 21 namespace ws {
(...skipping 16 matching lines...) Expand all
39 static_cast<uint32_t>(mojom::CompositorFrameSinkType::DEFAULT)), 38 static_cast<uint32_t>(mojom::CompositorFrameSinkType::DEFAULT)),
40 cc::LocalFrameId(1u, 1u)), 39 cc::LocalFrameId(1u, 1u)),
41 gfx::Size(100, 100)); 40 gfx::Size(100, 100));
42 } 41 }
43 42
44 } // namespace 43 } // namespace
45 44
46 class FrameGeneratorTest : public testing::Test { 45 class FrameGeneratorTest : public testing::Test {
47 public: 46 public:
48 FrameGeneratorTest() 47 FrameGeneratorTest()
49 : display_compositor_(new DisplayCompositor(nullptr)), 48 : root_window_(base::MakeUnique<ServerWindow>(&window_delegate_,
50 root_window_(base::MakeUnique<ServerWindow>(&window_delegate_,
51 kRootDisplayId)) {} 49 kRootDisplayId)) {}
52 ~FrameGeneratorTest() override {} 50 ~FrameGeneratorTest() override {}
53 51
54 // Calls DrawWindowTree() on |frame_generator_| 52 // Calls DrawWindowTree() on |frame_generator_|
55 void DrawWindowTree(cc::RenderPass* pass); 53 void DrawWindowTree(cc::RenderPass* pass);
56 54
57 ServerWindow* root_window() { 55 ServerWindow* root_window() {
58 return frame_generator_delegate_->GetRootWindow(); 56 return frame_generator_delegate_->GetRootWindow();
59 } 57 }
60 58
61 TestServerWindowDelegate* test_window_delegate() { return &window_delegate_; } 59 TestServerWindowDelegate* test_window_delegate() { return &window_delegate_; }
62 60
63 private: 61 private:
64 // testing::Test: 62 // testing::Test:
65 void SetUp() override; 63 void SetUp() override;
66 void TearDown() override; 64 void TearDown() override;
67 65
68 scoped_refptr<DisplayCompositor> display_compositor_;
69 std::unique_ptr<FrameGenerator> frame_generator_; 66 std::unique_ptr<FrameGenerator> frame_generator_;
70 std::unique_ptr<TestFrameGeneratorDelegate> frame_generator_delegate_; 67 std::unique_ptr<TestFrameGeneratorDelegate> frame_generator_delegate_;
71 TestServerWindowDelegate window_delegate_; 68 TestServerWindowDelegate window_delegate_;
72 std::unique_ptr<ServerWindow> root_window_; 69 std::unique_ptr<ServerWindow> root_window_;
73 70
74 // Needed so that Mojo classes can be initialized for ServerWindow use. 71 // Needed so that Mojo classes can be initialized for ServerWindow use.
75 base::TestMessageLoop message_loop_; 72 base::TestMessageLoop message_loop_;
76 73
77 DISALLOW_COPY_AND_ASSIGN(FrameGeneratorTest); 74 DISALLOW_COPY_AND_ASSIGN(FrameGeneratorTest);
78 }; 75 };
79 76
80 void FrameGeneratorTest::DrawWindowTree(cc::RenderPass* pass) { 77 void FrameGeneratorTest::DrawWindowTree(cc::RenderPass* pass) {
81 frame_generator_->DrawWindowTree( 78 frame_generator_->DrawWindowTree(
82 pass, frame_generator_delegate_->GetRootWindow(), gfx::Vector2d(), 1.0f); 79 pass, frame_generator_delegate_->GetRootWindow(), gfx::Vector2d(), 1.0f);
83 } 80 }
84 81
85 void FrameGeneratorTest::SetUp() { 82 void FrameGeneratorTest::SetUp() {
86 testing::Test::SetUp(); 83 testing::Test::SetUp();
87 frame_generator_delegate_ = base::MakeUnique<TestFrameGeneratorDelegate>( 84 frame_generator_delegate_ = base::MakeUnique<TestFrameGeneratorDelegate>(
88 base::MakeUnique<ServerWindow>(&window_delegate_, WindowId())); 85 base::MakeUnique<ServerWindow>(&window_delegate_, WindowId()));
89 PlatformDisplayInitParams init_params; 86 PlatformDisplayInitParams init_params;
90 frame_generator_ = base::MakeUnique<FrameGenerator>( 87 frame_generator_ = base::MakeUnique<FrameGenerator>(
91 frame_generator_delegate_.get(), root_window_.get(), display_compositor_); 88 frame_generator_delegate_.get(), root_window_.get());
92 InitWindow(root_window()); 89 InitWindow(root_window());
93 } 90 }
94 91
95 void FrameGeneratorTest::TearDown() { 92 void FrameGeneratorTest::TearDown() {
96 frame_generator_.reset(); 93 frame_generator_.reset();
97 frame_generator_delegate_.reset(); 94 frame_generator_delegate_.reset();
98 } 95 }
99 96
100 // Tests correctness of the SharedQuadStateList generated by 97 // Tests correctness of the SharedQuadStateList generated by
101 // FrameGenerator::DrawWindowTree(). 98 // FrameGenerator::DrawWindowTree().
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 EXPECT_EQ(3u, quad_state_list->size()); 137 EXPECT_EQ(3u, quad_state_list->size());
141 auto it = quad_state_list->begin(); 138 auto it = quad_state_list->begin();
142 EXPECT_EQ(child_opacity * root_opacity, (*it)->opacity); 139 EXPECT_EQ(child_opacity * root_opacity, (*it)->opacity);
143 EXPECT_EQ(child_opacity * root_opacity, (*++it)->opacity); 140 EXPECT_EQ(child_opacity * root_opacity, (*++it)->opacity);
144 EXPECT_EQ(root_opacity, (*++it)->opacity); 141 EXPECT_EQ(root_opacity, (*++it)->opacity);
145 } 142 }
146 143
147 } // namespace test 144 } // namespace test
148 } // namespace ws 145 } // namespace ws
149 } // namespace ui 146 } // namespace ui
OLDNEW
« no previous file with comments | « services/ui/ws/frame_generator.cc ('k') | services/ui/ws/platform_display.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698