Chromium Code Reviews| 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 | |
|
Sami
2016/08/03 11:20:31
Thanks for adding this test.
altimin
2016/08/03 11:54:10
Acknowledged.
| |
| 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 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 488 std::string page_id_two_; | 557 std::string page_id_two_; |
| 489 bool page_one_loaded_ = false; | 558 bool page_one_loaded_ = false; |
| 490 bool page_two_loaded_ = false; | 559 bool page_two_loaded_ = false; |
| 491 int page_close_count_ = 0; | 560 int page_close_count_ = 0; |
| 492 int context_closed_count_ = 0; | 561 int context_closed_count_ = 0; |
| 493 }; | 562 }; |
| 494 | 563 |
| 495 HEADLESS_ASYNC_DEVTOOLED_TEST_F(BrowserDomainCreateTwoContexts); | 564 HEADLESS_ASYNC_DEVTOOLED_TEST_F(BrowserDomainCreateTwoContexts); |
| 496 | 565 |
| 497 } // namespace headless | 566 } // namespace headless |
| OLD | NEW |