OLD | NEW |
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 "headless/test/headless_browser_test.h" | 5 #include "headless/test/headless_browser_test.h" |
6 | 6 |
7 #include "base/files/file_path.h" | 7 #include "base/files/file_path.h" |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 } | 188 } |
189 | 189 |
190 void HeadlessBrowserTest::FinishAsynchronousTest() { | 190 void HeadlessBrowserTest::FinishAsynchronousTest() { |
191 run_loop_->Quit(); | 191 run_loop_->Quit(); |
192 } | 192 } |
193 | 193 |
194 HeadlessAsyncDevTooledBrowserTest::HeadlessAsyncDevTooledBrowserTest() | 194 HeadlessAsyncDevTooledBrowserTest::HeadlessAsyncDevTooledBrowserTest() |
195 : browser_context_(nullptr), | 195 : browser_context_(nullptr), |
196 web_contents_(nullptr), | 196 web_contents_(nullptr), |
197 devtools_client_(HeadlessDevToolsClient::Create()), | 197 devtools_client_(HeadlessDevToolsClient::Create()), |
| 198 browser_devtools_client_(HeadlessDevToolsClient::Create()), |
198 render_process_exited_(false) {} | 199 render_process_exited_(false) {} |
199 | 200 |
200 HeadlessAsyncDevTooledBrowserTest::~HeadlessAsyncDevTooledBrowserTest() {} | 201 HeadlessAsyncDevTooledBrowserTest::~HeadlessAsyncDevTooledBrowserTest() {} |
201 | 202 |
202 void HeadlessAsyncDevTooledBrowserTest::DevToolsTargetReady() { | 203 void HeadlessAsyncDevTooledBrowserTest::DevToolsTargetReady() { |
203 EXPECT_TRUE(web_contents_->GetDevToolsTarget()); | 204 EXPECT_TRUE(web_contents_->GetDevToolsTarget()); |
204 web_contents_->GetDevToolsTarget()->AttachClient(devtools_client_.get()); | 205 web_contents_->GetDevToolsTarget()->AttachClient(devtools_client_.get()); |
205 RunDevTooledTest(); | 206 RunDevTooledTest(); |
206 } | 207 } |
207 | 208 |
(...skipping 12 matching lines...) Expand all Loading... |
220 HeadlessBrowserContext::Builder builder = | 221 HeadlessBrowserContext::Builder builder = |
221 browser()->CreateBrowserContextBuilder(); | 222 browser()->CreateBrowserContextBuilder(); |
222 builder.SetProtocolHandlers(GetProtocolHandlers()); | 223 builder.SetProtocolHandlers(GetProtocolHandlers()); |
223 if (GetCreateTabSocket()) { | 224 if (GetCreateTabSocket()) { |
224 builder.EnableUnsafeNetworkAccessWithMojoBindings(true); | 225 builder.EnableUnsafeNetworkAccessWithMojoBindings(true); |
225 builder.AddTabSocketMojoBindings(); | 226 builder.AddTabSocketMojoBindings(); |
226 } | 227 } |
227 browser_context_ = builder.Build(); | 228 browser_context_ = builder.Build(); |
228 | 229 |
229 browser()->SetDefaultBrowserContext(browser_context_); | 230 browser()->SetDefaultBrowserContext(browser_context_); |
| 231 browser()->GetDevToolsTarget()->AttachClient(browser_devtools_client_.get()); |
230 | 232 |
231 web_contents_ = browser_context_->CreateWebContentsBuilder() | 233 web_contents_ = browser_context_->CreateWebContentsBuilder() |
232 .CreateTabSocket(GetCreateTabSocket()) | 234 .CreateTabSocket(GetCreateTabSocket()) |
233 .Build(); | 235 .Build(); |
234 web_contents_->AddObserver(this); | 236 web_contents_->AddObserver(this); |
235 | 237 |
236 RunAsynchronousTest(); | 238 RunAsynchronousTest(); |
237 | 239 |
238 if (!render_process_exited_) | 240 if (!render_process_exited_) |
239 web_contents_->GetDevToolsTarget()->DetachClient(devtools_client_.get()); | 241 web_contents_->GetDevToolsTarget()->DetachClient(devtools_client_.get()); |
240 web_contents_->RemoveObserver(this); | 242 web_contents_->RemoveObserver(this); |
241 web_contents_->Close(); | 243 web_contents_->Close(); |
242 web_contents_ = nullptr; | 244 web_contents_ = nullptr; |
| 245 browser()->GetDevToolsTarget()->DetachClient(browser_devtools_client_.get()); |
243 browser_context_->Close(); | 246 browser_context_->Close(); |
244 browser_context_ = nullptr; | 247 browser_context_ = nullptr; |
245 } | 248 } |
246 | 249 |
247 ProtocolHandlerMap HeadlessAsyncDevTooledBrowserTest::GetProtocolHandlers() { | 250 ProtocolHandlerMap HeadlessAsyncDevTooledBrowserTest::GetProtocolHandlers() { |
248 return ProtocolHandlerMap(); | 251 return ProtocolHandlerMap(); |
249 } | 252 } |
250 | 253 |
251 bool HeadlessAsyncDevTooledBrowserTest::GetCreateTabSocket() { | 254 bool HeadlessAsyncDevTooledBrowserTest::GetCreateTabSocket() { |
252 return false; | 255 return false; |
253 } | 256 } |
254 | 257 |
255 } // namespace headless | 258 } // namespace headless |
OLD | NEW |