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

Side by Side Diff: content/browser/frame_host/render_widget_host_view_child_frame_unittest.cc

Issue 2297273004: Revert "Revert of content: Fix Context creation logic in ContextProviderFactoryImpl. (patchset #10 … (Closed)
Patch Set: remove gpu process initialization failure Created 4 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "content/browser/frame_host/render_widget_host_view_child_frame.h" 5 #include "content/browser/frame_host/render_widget_host_view_child_frame.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 14 matching lines...) Expand all
25 #include "content/browser/renderer_host/render_widget_host_impl.h" 25 #include "content/browser/renderer_host/render_widget_host_impl.h"
26 #include "content/common/view_messages.h" 26 #include "content/common/view_messages.h"
27 #include "content/public/browser/render_widget_host_view.h" 27 #include "content/public/browser/render_widget_host_view.h"
28 #include "content/public/test/mock_render_process_host.h" 28 #include "content/public/test/mock_render_process_host.h"
29 #include "content/public/test/test_browser_context.h" 29 #include "content/public/test/test_browser_context.h"
30 #include "content/test/test_render_view_host.h" 30 #include "content/test/test_render_view_host.h"
31 #include "testing/gtest/include/gtest/gtest.h" 31 #include "testing/gtest/include/gtest/gtest.h"
32 32
33 #if defined(OS_ANDROID) 33 #if defined(OS_ANDROID)
34 #include "content/browser/renderer_host/context_provider_factory_impl_android.h" 34 #include "content/browser/renderer_host/context_provider_factory_impl_android.h"
35 #include "content/test/mock_gpu_channel_establish_factory.h"
35 #endif 36 #endif
36 37
37 namespace content { 38 namespace content {
38 namespace { 39 namespace {
39 class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate { 40 class MockRenderWidgetHostDelegate : public RenderWidgetHostDelegate {
40 public: 41 public:
41 MockRenderWidgetHostDelegate() {} 42 MockRenderWidgetHostDelegate() {}
42 ~MockRenderWidgetHostDelegate() override {} 43 ~MockRenderWidgetHostDelegate() override {}
43 private: 44 private:
44 void Cut() override {} 45 void Cut() override {}
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 RenderWidgetHostViewChildFrameTest() {} 79 RenderWidgetHostViewChildFrameTest() {}
79 80
80 void SetUp() override { 81 void SetUp() override {
81 browser_context_.reset(new TestBrowserContext); 82 browser_context_.reset(new TestBrowserContext);
82 83
83 // ImageTransportFactory doesn't exist on Android. 84 // ImageTransportFactory doesn't exist on Android.
84 #if !defined(OS_ANDROID) 85 #if !defined(OS_ANDROID)
85 ImageTransportFactory::InitializeForUnitTests( 86 ImageTransportFactory::InitializeForUnitTests(
86 base::WrapUnique(new NoTransportImageTransportFactory)); 87 base::WrapUnique(new NoTransportImageTransportFactory));
87 #else 88 #else
89 ContextProviderFactoryImpl::Initialize(&gpu_channel_factory_);
88 ui::ContextProviderFactory::SetInstance( 90 ui::ContextProviderFactory::SetInstance(
89 ContextProviderFactoryImpl::GetInstance()); 91 ContextProviderFactoryImpl::GetInstance());
90 #endif 92 #endif
91 93
92 MockRenderProcessHost* process_host = 94 MockRenderProcessHost* process_host =
93 new MockRenderProcessHost(browser_context_.get()); 95 new MockRenderProcessHost(browser_context_.get());
94 int32_t routing_id = process_host->GetNextRoutingID(); 96 int32_t routing_id = process_host->GetNextRoutingID();
95 widget_host_ = 97 widget_host_ =
96 new RenderWidgetHostImpl(&delegate_, process_host, routing_id, false); 98 new RenderWidgetHostImpl(&delegate_, process_host, routing_id, false);
97 view_ = new RenderWidgetHostViewChildFrame(widget_host_); 99 view_ = new RenderWidgetHostViewChildFrame(widget_host_);
(...skipping 10 matching lines...) Expand all
108 110
109 browser_context_.reset(); 111 browser_context_.reset();
110 112
111 message_loop_.task_runner()->DeleteSoon(FROM_HERE, 113 message_loop_.task_runner()->DeleteSoon(FROM_HERE,
112 browser_context_.release()); 114 browser_context_.release());
113 base::RunLoop().RunUntilIdle(); 115 base::RunLoop().RunUntilIdle();
114 #if !defined(OS_ANDROID) 116 #if !defined(OS_ANDROID)
115 ImageTransportFactory::Terminate(); 117 ImageTransportFactory::Terminate();
116 #else 118 #else
117 ui::ContextProviderFactory::SetInstance(nullptr); 119 ui::ContextProviderFactory::SetInstance(nullptr);
120 ContextProviderFactoryImpl::Terminate();
118 #endif 121 #endif
119 } 122 }
120 123
121 cc::SurfaceId surface_id() { return view_->surface_id_; } 124 cc::SurfaceId surface_id() { return view_->surface_id_; }
122 125
123 protected: 126 protected:
124 base::MessageLoopForUI message_loop_; 127 base::MessageLoopForUI message_loop_;
125 std::unique_ptr<BrowserContext> browser_context_; 128 std::unique_ptr<BrowserContext> browser_context_;
126 MockRenderWidgetHostDelegate delegate_; 129 MockRenderWidgetHostDelegate delegate_;
127 130
128 // Tests should set these to NULL if they've already triggered their 131 // Tests should set these to NULL if they've already triggered their
129 // destruction. 132 // destruction.
130 RenderWidgetHostImpl* widget_host_; 133 RenderWidgetHostImpl* widget_host_;
131 RenderWidgetHostViewChildFrame* view_; 134 RenderWidgetHostViewChildFrame* view_;
132 MockCrossProcessFrameConnector* test_frame_connector_; 135 MockCrossProcessFrameConnector* test_frame_connector_;
133 136
137 #if defined(OS_ANDROID)
138 MockGpuChannelEstablishFactory gpu_channel_factory_;
139 #endif
140
134 private: 141 private:
135 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewChildFrameTest); 142 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewChildFrameTest);
136 }; 143 };
137 144
138 cc::CompositorFrame CreateDelegatedFrame(float scale_factor, 145 cc::CompositorFrame CreateDelegatedFrame(float scale_factor,
139 gfx::Size size, 146 gfx::Size size,
140 const gfx::Rect& damage) { 147 const gfx::Rect& damage) {
141 cc::CompositorFrame frame; 148 cc::CompositorFrame frame;
142 frame.metadata.device_scale_factor = scale_factor; 149 frame.metadata.device_scale_factor = scale_factor;
143 frame.delegated_frame_data.reset(new cc::DelegatedFrameData); 150 frame.delegated_frame_data.reset(new cc::DelegatedFrameData);
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 190
184 // Surface ID should have been passed to CrossProcessFrameConnector to 191 // Surface ID should have been passed to CrossProcessFrameConnector to
185 // be sent to the embedding renderer. 192 // be sent to the embedding renderer.
186 EXPECT_EQ(id, test_frame_connector_->last_surface_id_received_); 193 EXPECT_EQ(id, test_frame_connector_->last_surface_id_received_);
187 EXPECT_EQ(view_size, test_frame_connector_->last_frame_size_received_); 194 EXPECT_EQ(view_size, test_frame_connector_->last_frame_size_received_);
188 EXPECT_EQ(scale_factor, test_frame_connector_->last_scale_factor_received_); 195 EXPECT_EQ(scale_factor, test_frame_connector_->last_scale_factor_received_);
189 } 196 }
190 } 197 }
191 198
192 } // namespace content 199 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/browser_main_loop.cc ('k') | content/browser/frame_host/render_widget_host_view_guest_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698