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 |