Index: content/browser/service_worker/service_worker_browsertest.cc |
diff --git a/content/browser/service_worker/service_worker_browsertest.cc b/content/browser/service_worker/service_worker_browsertest.cc |
index 02af1cc802d9dee7224a2126f0f6045d9bae9fbb..1c423d0ed0a9c5bc12ee327591fb4176c84ddab5 100644 |
--- a/content/browser/service_worker/service_worker_browsertest.cc |
+++ b/content/browser/service_worker/service_worker_browsertest.cc |
@@ -534,8 +534,6 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest { |
void ActivateTestHelper( |
const std::string& worker_url, |
ServiceWorkerStatusCode expected_status) { |
- RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread, |
- base::Unretained(this), worker_url)); |
ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED; |
base::RunLoop run_loop; |
BrowserThread::PostTask( |
@@ -775,9 +773,6 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest { |
void ActivateOnIOThread(const base::Closure& done, |
ServiceWorkerStatusCode* result) { |
ASSERT_TRUE(BrowserThread::CurrentlyOn(BrowserThread::IO)); |
- version_->set_fetch_handler_existence( |
- ServiceWorkerVersion::FetchHandlerExistence::EXISTS); |
- version_->SetMainScriptHttpResponseInfo(CreateHttpResponseInfo()); |
version_->SetStatus(ServiceWorkerVersion::ACTIVATING); |
registration_->SetActiveVersion(version_.get()); |
version_->RunAfterStartWorker( |
@@ -935,17 +930,8 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
ReadResourceFailure_WaitingWorker) { |
StartServerAndNavigateToSetup(); |
// Create a registration and active version. |
- RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread, |
- base::Unretained(this), |
- "/service_worker/worker.js")); |
- base::RunLoop activate_run_loop; |
- ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED; |
- BrowserThread::PostTask( |
- BrowserThread::IO, FROM_HERE, |
- base::Bind(&self::ActivateOnIOThread, base::Unretained(this), |
- activate_run_loop.QuitClosure(), &status)); |
- activate_run_loop.Run(); |
- EXPECT_EQ(SERVICE_WORKER_OK, status); |
+ InstallTestHelper("/service_worker/worker.js", SERVICE_WORKER_OK); |
+ ActivateTestHelper("/service_worker/worker.js", SERVICE_WORKER_OK); |
ASSERT_TRUE(registration_->active_version()); |
// Give the version a controllee. |
@@ -953,15 +939,15 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
base::Bind(&self::AddControlleeOnIOThread, base::Unretained(this))); |
// Add a non-existent resource to the version. |
- std::vector<ServiceWorkerDatabase::ResourceRecord> records; |
- records.push_back( |
- ServiceWorkerDatabase::ResourceRecord(30, version_->script_url(), 100)); |
- version_->script_cache_map()->SetResources(records); |
+ version_->script_cache_map()->resource_map_[version_->script_url()] = |
+ ServiceWorkerDatabase::ResourceRecord(30, version_->script_url(), 100); |
// Make a waiting version and store it. |
RunOnIOThread(base::Bind(&self::AddWaitingWorkerOnIOThread, |
base::Unretained(this), |
"/service_worker/worker.js")); |
+ std::vector<ServiceWorkerDatabase::ResourceRecord> records = { |
+ ServiceWorkerDatabase::ResourceRecord(31, version_->script_url(), 100)}; |
registration_->waiting_version()->script_cache_map()->SetResources(records); |
StoreRegistration(registration_->waiting_version()->version_id(), |
SERVICE_WORKER_OK); |
@@ -1022,12 +1008,15 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
Activate_NoEventListener) { |
StartServerAndNavigateToSetup(); |
+ InstallTestHelper("/service_worker/worker.js", SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/worker.js", SERVICE_WORKER_OK); |
ASSERT_EQ(ServiceWorkerVersion::ACTIVATING, version_->status()); |
} |
IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, Activate_Rejected) { |
StartServerAndNavigateToSetup(); |
+ InstallTestHelper("/service_worker/worker_activate_rejected.js", |
+ SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/worker_activate_rejected.js", |
SERVICE_WORKER_ERROR_EVENT_WAITUNTIL_REJECTED); |
} |
@@ -1164,6 +1153,7 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, FetchEvent_Response) { |
ServiceWorkerFetchEventResult result; |
ServiceWorkerResponse response; |
std::unique_ptr<storage::BlobDataHandle> blob_data_handle; |
+ InstallTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK); |
FetchOnRegisteredWorker(&result, &response, &blob_data_handle); |
@@ -1190,6 +1180,8 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
ServiceWorkerResponse response2; |
std::unique_ptr<storage::BlobDataHandle> blob_data_handle; |
const base::Time start_time(base::Time::Now()); |
+ InstallTestHelper("/service_worker/fetch_event_response_via_cache.js", |
+ SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/fetch_event_response_via_cache.js", |
SERVICE_WORKER_OK); |
@@ -1216,6 +1208,8 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, |
ServiceWorkerFetchEventResult result; |
ServiceWorkerResponse response; |
std::unique_ptr<storage::BlobDataHandle> blob_data_handle; |
+ InstallTestHelper("/service_worker/fetch_event_rejected.js", |
+ SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/fetch_event_rejected.js", |
SERVICE_WORKER_OK); |
@@ -2552,15 +2546,6 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserV8CacheTest, Restart) { |
// OnCachedMetadataUpdated() is called. |
cached_metadata_run_loop.Run(); |
- // Activate the worker. |
- ServiceWorkerStatusCode status = SERVICE_WORKER_ERROR_FAILED; |
- base::RunLoop activate_run_loop; |
- BrowserThread::PostTask( |
- BrowserThread::IO, FROM_HERE, |
- base::Bind(&self::ActivateOnIOThread, base::Unretained(this), |
- activate_run_loop.QuitClosure(), &status)); |
- activate_run_loop.Run(); |
- ASSERT_EQ(SERVICE_WORKER_OK, status); |
// Stop the worker. |
StopWorker(SERVICE_WORKER_OK); |
// Restart the worker. |
@@ -2990,6 +2975,7 @@ class TestMemoryCoordinatorDelegate : public MemoryCoordinatorDelegate { |
IN_PROC_BROWSER_TEST_F(MemoryCoordinatorWithServiceWorkerTest, |
CannotSuspendRendererWithServiceWorker) { |
StartServerAndNavigateToSetup(); |
+ InstallTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK); |
ActivateTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK); |
MemoryCoordinatorImpl* memory_coordinator = |