| 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 (GetTabSocketType() != HeadlessWebContents::Builder::TabSocketType::NONE) { | 224 if (GetTabSocketType() != HeadlessWebContents::Builder::TabSocketType::NONE) { |
| 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 .SetTabSocketType(GetTabSocketType()) | 234 .SetTabSocketType(GetTabSocketType()) |
| 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 HeadlessWebContents::Builder::TabSocketType | 254 HeadlessWebContents::Builder::TabSocketType |
| 252 HeadlessAsyncDevTooledBrowserTest::GetTabSocketType() { | 255 HeadlessAsyncDevTooledBrowserTest::GetTabSocketType() { |
| 253 return HeadlessWebContents::Builder::TabSocketType::NONE; | 256 return HeadlessWebContents::Builder::TabSocketType::NONE; |
| 254 } | 257 } |
| 255 | 258 |
| 256 bool HeadlessAsyncDevTooledBrowserTest:: | 259 bool HeadlessAsyncDevTooledBrowserTest:: |
| 257 GetCreateTabSocketOnlyForIsolatedWorld() { | 260 GetCreateTabSocketOnlyForIsolatedWorld() { |
| 258 return false; | 261 return false; |
| 259 } | 262 } |
| 260 | 263 |
| 261 } // namespace headless | 264 } // namespace headless |
| OLD | NEW |