Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(62)

Unified Diff: content/browser/service_worker/service_worker_browsertest.cc

Issue 2251633002: Use tri-state enum for the existence of Fetch Handler in ServiceWorkerVersion. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: s/status/existence/ Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | content/browser/service_worker/service_worker_controllee_request_handler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 5a1100d1624cd2d0601b91d9ee2dc858b11c4a82..919352d86e981ccd9592cfa2381693cb428ea40f 100644
--- a/content/browser/service_worker/service_worker_browsertest.cc
+++ b/content/browser/service_worker/service_worker_browsertest.cc
@@ -497,16 +497,6 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest {
ASSERT_EQ(SERVICE_WORKER_OK, fetch_result.status);
}
- void FetchTestHelper(
- const std::string& worker_url,
- ServiceWorkerFetchEventResult* result,
- ServiceWorkerResponse* response,
- std::unique_ptr<storage::BlobDataHandle>* blob_data_handle) {
- RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread,
- base::Unretained(this), worker_url));
- FetchOnRegisteredWorker(result, response, blob_data_handle);
- }
-
void SetUpRegistrationOnIOThread(const std::string& worker_url) {
ASSERT_TRUE(BrowserThread::CurrentlyOn(BrowserThread::IO));
const GURL pattern = embedded_test_server()->GetURL("/service_worker/");
@@ -559,6 +549,8 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest {
registration_.get(), embedded_test_server()->GetURL(worker_url),
wrapper()->context()->storage()->NewVersionId(),
wrapper()->context()->AsWeakPtr()));
+ waiting_version->set_fetch_handler_existence(
+ ServiceWorkerVersion::FetchHandlerExistence::EXISTS);
waiting_version->SetStatus(ServiceWorkerVersion::INSTALLED);
registration_->SetWaitingVersion(waiting_version.get());
registration_->ActivateWaitingVersionWhenReady();
@@ -680,7 +672,10 @@ class ServiceWorkerVersionBrowserTest : public ServiceWorkerBrowserTest {
bool has_fetch_handler) {
version_->FinishRequest(
request_id, result == blink::WebServiceWorkerEventResultCompleted);
- version_->set_has_fetch_handler(has_fetch_handler);
+ version_->set_fetch_handler_existence(
+ has_fetch_handler
+ ? ServiceWorkerVersion::FetchHandlerExistence::EXISTS
+ : ServiceWorkerVersion::FetchHandlerExistence::DOES_NOT_EXIST);
ServiceWorkerStatusCode status = SERVICE_WORKER_OK;
if (result == blink::WebServiceWorkerEventResultRejected)
@@ -705,6 +700,8 @@ 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_->SetStatus(ServiceWorkerVersion::ACTIVATING);
registration_->SetActiveVersion(version_.get());
version_->RunAfterStartWorker(
@@ -828,6 +825,8 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, ReadResourceFailure) {
RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread,
base::Unretained(this),
"/service_worker/worker.js"));
+ version_->set_fetch_handler_existence(
+ ServiceWorkerVersion::FetchHandlerExistence::EXISTS);
version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
// Add a non-existent resource to the version.
@@ -914,13 +913,15 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest,
IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest,
InstallWithFetchHandler) {
InstallTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK);
- EXPECT_TRUE(version_->has_fetch_handler());
+ EXPECT_EQ(ServiceWorkerVersion::FetchHandlerExistence::EXISTS,
+ version_->fetch_handler_existence());
}
IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest,
InstallWithoutFetchHandler) {
InstallTestHelper("/service_worker/worker.js", SERVICE_WORKER_OK);
- EXPECT_FALSE(version_->has_fetch_handler());
+ EXPECT_EQ(ServiceWorkerVersion::FetchHandlerExistence::DOES_NOT_EXIST,
+ version_->fetch_handler_existence());
}
// Check that ServiceWorker script requests set a "Service-Worker: script"
@@ -1070,8 +1071,9 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest, FetchEvent_Response) {
ServiceWorkerFetchEventResult result;
ServiceWorkerResponse response;
std::unique_ptr<storage::BlobDataHandle> blob_data_handle;
- FetchTestHelper("/service_worker/fetch_event.js",
- &result, &response, &blob_data_handle);
+ ActivateTestHelper("/service_worker/fetch_event.js", SERVICE_WORKER_OK);
+
+ FetchOnRegisteredWorker(&result, &response, &blob_data_handle);
ASSERT_EQ(SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, result);
EXPECT_EQ(301, response.status_code);
EXPECT_EQ("Moved Permanently", response.status_text);
@@ -1094,10 +1096,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());
-
- RunOnIOThread(
- base::Bind(&self::SetUpRegistrationOnIOThread, base::Unretained(this),
- "/service_worker/fetch_event_response_via_cache.js"));
+ ActivateTestHelper("/service_worker/fetch_event_response_via_cache.js",
+ SERVICE_WORKER_OK);
FetchOnRegisteredWorker(&result, &response1, &blob_data_handle);
ASSERT_EQ(SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, result);
@@ -1121,10 +1121,8 @@ IN_PROC_BROWSER_TEST_F(ServiceWorkerVersionBrowserTest,
ServiceWorkerFetchEventResult result;
ServiceWorkerResponse response;
std::unique_ptr<storage::BlobDataHandle> blob_data_handle;
-
- RunOnIOThread(base::Bind(&self::SetUpRegistrationOnIOThread,
- base::Unretained(this),
- "/service_worker/fetch_event_rejected.js"));
+ ActivateTestHelper("/service_worker/fetch_event_rejected.js",
+ SERVICE_WORKER_OK);
ConsoleListener console_listener;
RunOnIOThread(base::Bind(&EmbeddedWorkerInstance::AddListener,
« no previous file with comments | « no previous file | content/browser/service_worker/service_worker_controllee_request_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698