| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <stddef.h> | 5 #include <stddef.h> |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 std::string value; | 378 std::string value; |
| 379 EXPECT_TRUE(name_value_pair->GetString(1, &value)); | 379 EXPECT_TRUE(name_value_pair->GetString(1, &value)); |
| 380 if (name == header_name && value == header_value) | 380 if (name == header_name && value == header_value) |
| 381 return true; | 381 return true; |
| 382 } | 382 } |
| 383 return false; | 383 return false; |
| 384 } | 384 } |
| 385 | 385 |
| 386 } // namespace | 386 } // namespace |
| 387 | 387 |
| 388 class ServiceWorkerBrowserTest : public testing::WithParamInterface<bool>, | 388 class ServiceWorkerBrowserTest |
| 389 public ContentBrowserTest { | 389 : public MojoServiceWorkerTestP<ContentBrowserTest> { |
| 390 protected: | 390 protected: |
| 391 using self = ServiceWorkerBrowserTest; | 391 using self = ServiceWorkerBrowserTest; |
| 392 | 392 |
| 393 void SetUp() override { | |
| 394 is_mojo_enabled_ = GetParam(); | |
| 395 if (is_mojo_enabled()) { | |
| 396 base::CommandLine::ForCurrentProcess()->AppendSwitch( | |
| 397 switches::kMojoServiceWorker); | |
| 398 } | |
| 399 ContentBrowserTest::SetUp(); | |
| 400 } | |
| 401 | |
| 402 void SetUpOnMainThread() override { | 393 void SetUpOnMainThread() override { |
| 403 ASSERT_TRUE(embedded_test_server()->Start()); | 394 ASSERT_TRUE(embedded_test_server()->Start()); |
| 404 StoragePartition* partition = BrowserContext::GetDefaultStoragePartition( | 395 StoragePartition* partition = BrowserContext::GetDefaultStoragePartition( |
| 405 shell()->web_contents()->GetBrowserContext()); | 396 shell()->web_contents()->GetBrowserContext()); |
| 406 wrapper_ = static_cast<ServiceWorkerContextWrapper*>( | 397 wrapper_ = static_cast<ServiceWorkerContextWrapper*>( |
| 407 partition->GetServiceWorkerContext()); | 398 partition->GetServiceWorkerContext()); |
| 408 | 399 |
| 409 // Navigate to the page to set up a renderer page (where we can embed | 400 // Navigate to the page to set up a renderer page (where we can embed |
| 410 // a worker). | 401 // a worker). |
| 411 NavigateToURLBlockUntilNavigationsComplete( | 402 NavigateToURLBlockUntilNavigationsComplete( |
| 412 shell(), | 403 shell(), |
| 413 embedded_test_server()->GetURL("/service_worker/empty.html"), 1); | 404 embedded_test_server()->GetURL("/service_worker/empty.html"), 1); |
| 414 | 405 |
| 415 RunOnIOThread(base::Bind(&self::SetUpOnIOThread, base::Unretained(this))); | 406 RunOnIOThread(base::Bind(&self::SetUpOnIOThread, base::Unretained(this))); |
| 416 } | 407 } |
| 417 | 408 |
| 418 void TearDownOnMainThread() override { | 409 void TearDownOnMainThread() override { |
| 419 RunOnIOThread( | 410 RunOnIOThread( |
| 420 base::Bind(&self::TearDownOnIOThread, base::Unretained(this))); | 411 base::Bind(&self::TearDownOnIOThread, base::Unretained(this))); |
| 421 wrapper_ = NULL; | 412 wrapper_ = NULL; |
| 422 } | 413 } |
| 423 | 414 |
| 424 virtual void SetUpOnIOThread() {} | 415 virtual void SetUpOnIOThread() {} |
| 425 virtual void TearDownOnIOThread() {} | 416 virtual void TearDownOnIOThread() {} |
| 426 | 417 |
| 427 ServiceWorkerContextWrapper* wrapper() { return wrapper_.get(); } | 418 ServiceWorkerContextWrapper* wrapper() { return wrapper_.get(); } |
| 428 ServiceWorkerContext* public_context() { return wrapper(); } | 419 ServiceWorkerContext* public_context() { return wrapper(); } |
| 429 bool is_mojo_enabled() const { return is_mojo_enabled_; } | |
| 430 | 420 |
| 431 void AssociateRendererProcessToPattern(const GURL& pattern) { | 421 void AssociateRendererProcessToPattern(const GURL& pattern) { |
| 432 wrapper_->process_manager()->AddProcessReferenceToPattern( | 422 wrapper_->process_manager()->AddProcessReferenceToPattern( |
| 433 pattern, shell()->web_contents()->GetRenderProcessHost()->GetID()); | 423 pattern, shell()->web_contents()->GetRenderProcessHost()->GetID()); |
| 434 } | 424 } |
| 435 | 425 |
| 436 private: | 426 private: |
| 437 scoped_refptr<ServiceWorkerContextWrapper> wrapper_; | 427 scoped_refptr<ServiceWorkerContextWrapper> wrapper_; |
| 438 bool is_mojo_enabled_ = false; | |
| 439 }; | 428 }; |
| 440 | 429 |
| 441 class ConsoleListener : public EmbeddedWorkerInstance::Listener { | 430 class ConsoleListener : public EmbeddedWorkerInstance::Listener { |
| 442 public: | 431 public: |
| 443 void OnReportConsoleMessage(int source_identifier, | 432 void OnReportConsoleMessage(int source_identifier, |
| 444 int message_level, | 433 int message_level, |
| 445 const base::string16& message, | 434 const base::string16& message, |
| 446 int line_number, | 435 int line_number, |
| 447 const GURL& source_url) override { | 436 const GURL& source_url) override { |
| 448 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 437 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| (...skipping 2312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2761 ServiceWorkerV8CacheStrategiesNormalTest, | 2750 ServiceWorkerV8CacheStrategiesNormalTest, |
| 2762 ::testing::Values(true, false)); | 2751 ::testing::Values(true, false)); |
| 2763 INSTANTIATE_TEST_CASE_P(ServiceWorkerBrowserTest, | 2752 INSTANTIATE_TEST_CASE_P(ServiceWorkerBrowserTest, |
| 2764 ServiceWorkerV8CacheStrategiesAggressiveTest, | 2753 ServiceWorkerV8CacheStrategiesAggressiveTest, |
| 2765 ::testing::Values(true, false)); | 2754 ::testing::Values(true, false)); |
| 2766 INSTANTIATE_TEST_CASE_P(ServiceWorkerBrowserTest, | 2755 INSTANTIATE_TEST_CASE_P(ServiceWorkerBrowserTest, |
| 2767 ServiceWorkerDisableWebSecurityTest, | 2756 ServiceWorkerDisableWebSecurityTest, |
| 2768 ::testing::Values(true, false)); | 2757 ::testing::Values(true, false)); |
| 2769 | 2758 |
| 2770 } // namespace content | 2759 } // namespace content |
| OLD | NEW |