| 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 <memory> | 5 #include <memory> |
| 6 | 6 |
| 7 #include "base/json/json_reader.h" | 7 #include "base/json/json_reader.h" |
| 8 #include "content/public/test/browser_test.h" | 8 #include "content/public/test/browser_test.h" |
| 9 #include "headless/public/domains/browser.h" | 9 #include "headless/public/domains/browser.h" |
| 10 #include "headless/public/domains/network.h" | 10 #include "headless/public/domains/network.h" |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 | 197 |
| 198 devtools_client_->GetBrowser()->GetExperimental()->CloseTarget( | 198 devtools_client_->GetBrowser()->GetExperimental()->CloseTarget( |
| 199 browser::CloseTargetParams::Builder() | 199 browser::CloseTargetParams::Builder() |
| 200 .SetTargetId(result->GetTargetId()) | 200 .SetTargetId(result->GetTargetId()) |
| 201 .Build(), | 201 .Build(), |
| 202 base::Bind(&BrowserDomainCreateAndDeletePageTest::OnCloseTargetResult, | 202 base::Bind(&BrowserDomainCreateAndDeletePageTest::OnCloseTargetResult, |
| 203 base::Unretained(this))); | 203 base::Unretained(this))); |
| 204 } | 204 } |
| 205 | 205 |
| 206 void OnCloseTargetResult(std::unique_ptr<browser::CloseTargetResult> result) { | 206 void OnCloseTargetResult(std::unique_ptr<browser::CloseTargetResult> result) { |
| 207 EXPECT_TRUE(result->GetSuccess()); |
| 207 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); | 208 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); |
| 208 FinishAsynchronousTest(); | 209 FinishAsynchronousTest(); |
| 209 } | 210 } |
| 210 }; | 211 }; |
| 211 | 212 |
| 212 HEADLESS_ASYNC_DEVTOOLED_TEST_F(BrowserDomainCreateAndDeletePageTest); | 213 HEADLESS_ASYNC_DEVTOOLED_TEST_F(BrowserDomainCreateAndDeletePageTest); |
| 213 | 214 |
| 215 class BrowserDomainCreateAndDeleteBrowserContextTest |
| 216 : public HeadlessAsyncDevTooledBrowserTest { |
| 217 void RunDevTooledTest() override { |
| 218 EXPECT_TRUE(embedded_test_server()->Start()); |
| 219 |
| 220 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); |
| 221 |
| 222 devtools_client_->GetBrowser()->GetExperimental()->CreateBrowserContext( |
| 223 browser::CreateBrowserContextParams::Builder().Build(), |
| 224 base::Bind(&BrowserDomainCreateAndDeleteBrowserContextTest:: |
| 225 OnCreateContextResult, |
| 226 base::Unretained(this))); |
| 227 } |
| 228 |
| 229 void OnCreateContextResult( |
| 230 std::unique_ptr<browser::CreateBrowserContextResult> result) { |
| 231 browser_context_id_ = result->GetBrowserContextId(); |
| 232 |
| 233 devtools_client_->GetBrowser()->GetExperimental()->CreateTarget( |
| 234 browser::CreateTargetParams::Builder() |
| 235 .SetUrl(embedded_test_server()->GetURL("/hello.html").spec()) |
| 236 .SetBrowserContextId(result->GetBrowserContextId()) |
| 237 .SetWidth(1) |
| 238 .SetHeight(1) |
| 239 .Build(), |
| 240 base::Bind(&BrowserDomainCreateAndDeleteBrowserContextTest:: |
| 241 OnCreateTargetResult, |
| 242 base::Unretained(this))); |
| 243 } |
| 244 |
| 245 void OnCreateTargetResult( |
| 246 std::unique_ptr<browser::CreateTargetResult> result) { |
| 247 EXPECT_EQ(2u, browser()->GetAllWebContents().size()); |
| 248 |
| 249 devtools_client_->GetBrowser()->GetExperimental()->CloseTarget( |
| 250 browser::CloseTargetParams::Builder() |
| 251 .SetTargetId(result->GetTargetId()) |
| 252 .Build(), |
| 253 base::Bind(&BrowserDomainCreateAndDeleteBrowserContextTest:: |
| 254 OnCloseTargetResult, |
| 255 base::Unretained(this))); |
| 256 } |
| 257 |
| 258 void OnCloseTargetResult(std::unique_ptr<browser::CloseTargetResult> result) { |
| 259 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); |
| 260 EXPECT_TRUE(result->GetSuccess()); |
| 261 |
| 262 devtools_client_->GetBrowser()->GetExperimental()->DisposeBrowserContext( |
| 263 browser::DisposeBrowserContextParams::Builder() |
| 264 .SetBrowserContextId(browser_context_id_) |
| 265 .Build(), |
| 266 base::Bind(&BrowserDomainCreateAndDeleteBrowserContextTest:: |
| 267 OnDisposeBrowserContextResult, |
| 268 base::Unretained(this))); |
| 269 } |
| 270 |
| 271 void OnDisposeBrowserContextResult( |
| 272 std::unique_ptr<browser::DisposeBrowserContextResult> result) { |
| 273 EXPECT_TRUE(result->GetSuccess()); |
| 274 FinishAsynchronousTest(); |
| 275 } |
| 276 |
| 277 private: |
| 278 std::string browser_context_id_; |
| 279 }; |
| 280 |
| 281 HEADLESS_ASYNC_DEVTOOLED_TEST_F(BrowserDomainCreateAndDeleteBrowserContextTest); |
| 282 |
| 214 class BrowserDomainDisposeContextFailsIfInUse | 283 class BrowserDomainDisposeContextFailsIfInUse |
| 215 : public HeadlessAsyncDevTooledBrowserTest { | 284 : public HeadlessAsyncDevTooledBrowserTest { |
| 216 void RunDevTooledTest() override { | 285 void RunDevTooledTest() override { |
| 217 EXPECT_TRUE(embedded_test_server()->Start()); | 286 EXPECT_TRUE(embedded_test_server()->Start()); |
| 218 | 287 |
| 219 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); | 288 EXPECT_EQ(1u, browser()->GetAllWebContents().size()); |
| 220 devtools_client_->GetBrowser()->GetExperimental()->CreateBrowserContext( | 289 devtools_client_->GetBrowser()->GetExperimental()->CreateBrowserContext( |
| 221 browser::CreateBrowserContextParams::Builder().Build(), | 290 browser::CreateBrowserContextParams::Builder().Build(), |
| 222 base::Bind(&BrowserDomainDisposeContextFailsIfInUse::OnContextCreated, | 291 base::Bind(&BrowserDomainDisposeContextFailsIfInUse::OnContextCreated, |
| 223 base::Unretained(this))); | 292 base::Unretained(this))); |
| (...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 FinishAsynchronousTest(); | 596 FinishAsynchronousTest(); |
| 528 } | 597 } |
| 529 | 598 |
| 530 private: | 599 private: |
| 531 bool navigation_requested_ = false; | 600 bool navigation_requested_ = false; |
| 532 }; | 601 }; |
| 533 | 602 |
| 534 HEADLESS_ASYNC_DEVTOOLED_TEST_F(HeadlessDevToolsNavigationControlTest); | 603 HEADLESS_ASYNC_DEVTOOLED_TEST_F(HeadlessDevToolsNavigationControlTest); |
| 535 | 604 |
| 536 } // namespace headless | 605 } // namespace headless |
| OLD | NEW |