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

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

Issue 1867293004: Set service worker response info data for foreign fetch intercepted fetches. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@ff-check-origin
Patch Set: address comment Created 4 years, 8 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 | « content/browser/service_worker/service_worker_url_request_job.cc ('k') | content/content_browser.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/service_worker/service_worker_url_request_job_unittest.cc
diff --git a/content/browser/service_worker/service_worker_url_request_job_unittest.cc b/content/browser/service_worker/service_worker_url_request_job_unittest.cc
index 47b3a527fcfb2c07d5f41a988b7207ab817eae11..8fd79a1a0a355a00170e7cf83d76a85167506384 100644
--- a/content/browser/service_worker/service_worker_url_request_job_unittest.cc
+++ b/content/browser/service_worker/service_worker_url_request_job_unittest.cc
@@ -24,6 +24,7 @@
#include "content/browser/service_worker/service_worker_context_core.h"
#include "content/browser/service_worker/service_worker_provider_host.h"
#include "content/browser/service_worker/service_worker_registration.h"
+#include "content/browser/service_worker/service_worker_response_info.h"
#include "content/browser/service_worker/service_worker_test_utils.h"
#include "content/browser/service_worker/service_worker_version.h"
#include "content/browser/streams/stream.h"
@@ -63,103 +64,6 @@ namespace {
const int kProviderID = 100;
const char kTestData[] = "Here is sample text for the blob.";
-class TestCallbackTracker {
- public:
- TestCallbackTracker() {}
- ~TestCallbackTracker() {}
-
- void OnStartCompleted(
- bool was_fetched_via_service_worker,
- bool was_fallback_required,
- const GURL& original_url_via_service_worker,
- blink::WebServiceWorkerResponseType response_type_via_service_worker,
- base::TimeTicks service_worker_start_time,
- base::TimeTicks service_worker_ready_time,
- bool response_is_in_cache_storage,
- const std::string& response_cache_storage_cache_name) {
- ++times_on_start_completed_invoked_;
-
- was_fetched_via_service_worker_ = was_fetched_via_service_worker;
- was_fallback_required_ = was_fallback_required;
- original_url_via_service_worker_ = original_url_via_service_worker;
- response_type_via_service_worker_ =
- blink::WebServiceWorkerResponseTypeDefault;
- service_worker_start_time_ = service_worker_start_time;
- service_worker_ready_time_ = service_worker_ready_time;
- response_is_in_cache_storage_ = response_is_in_cache_storage;
- response_cache_storage_cache_name_ = response_cache_storage_cache_name;
- }
-
- void OnPrepareToRestart(base::TimeTicks service_worker_start_time,
- base::TimeTicks service_worker_ready_time) {
- ++times_prepare_to_restart_invoked_;
-
- was_fetched_via_service_worker_ = false;
- was_fallback_required_ = false;
- original_url_via_service_worker_ = GURL();
- response_type_via_service_worker_ =
- blink::WebServiceWorkerResponseTypeDefault;
- service_worker_start_time_ = service_worker_start_time;
- service_worker_ready_time_ = service_worker_ready_time;
- }
-
- int times_on_start_completed_invoked() const {
- return times_on_start_completed_invoked_;
- }
-
- int times_prepare_to_restart_invoked() const {
- return times_prepare_to_restart_invoked_;
- }
-
- bool was_fetched_via_service_worker() const {
- return was_fetched_via_service_worker_;
- }
-
- bool was_fallback_required() const { return was_fallback_required_; }
-
- const GURL& original_url_via_service_worker() const {
- return original_url_via_service_worker_;
- }
-
- blink::WebServiceWorkerResponseType response_type_via_service_worker() const {
- return response_type_via_service_worker_;
- }
-
- base::TimeTicks service_worker_start_time() const {
- return service_worker_start_time_;
- }
-
- base::TimeTicks service_worker_ready_time() const {
- return service_worker_ready_time_;
- }
-
- bool response_is_in_cache_storage() const {
- return response_is_in_cache_storage_;
- }
-
- const std::string& response_cache_storage_cache_name() const {
- return response_cache_storage_cache_name_;
- }
-
- private:
- int times_on_start_completed_invoked_ = 0;
- int times_prepare_to_restart_invoked_ = 0;
-
- // These are all updated every time OnStartCompleted / OnPrepareToRestart are
- // invoked.
- bool was_fetched_via_service_worker_ = false;
- bool was_fallback_required_ = false;
- GURL original_url_via_service_worker_;
- blink::WebServiceWorkerResponseType response_type_via_service_worker_ =
- blink::WebServiceWorkerResponseTypeDefault;
- base::TimeTicks service_worker_start_time_;
- base::TimeTicks service_worker_ready_time_;
- bool response_is_in_cache_storage_ = false;
- std::string response_cache_storage_cache_name_;
-
- DISALLOW_COPY_AND_ASSIGN(TestCallbackTracker);
-};
-
class MockHttpProtocolHandler
: public net::URLRequestJobFactory::ProtocolHandler {
public:
@@ -351,27 +255,7 @@ class ServiceWorkerURLRequestJobTest
}
// ServiceWorkerURLRequestJob::Delegate implementation:
- void OnPrepareToRestart(base::TimeTicks service_worker_start_time,
- base::TimeTicks service_worker_ready_time) override {
- callback_tracker_.OnPrepareToRestart(service_worker_start_time,
- service_worker_ready_time);
- }
-
- void OnStartCompleted(
- bool was_fetched_via_service_worker,
- bool was_fallback_required,
- const GURL& original_url_via_service_worker,
- blink::WebServiceWorkerResponseType response_type_via_service_worker,
- base::TimeTicks worker_start_time,
- base::TimeTicks service_worker_ready_time,
- bool response_is_in_cache_storage,
- const std::string& response_cache_storage_cache_name) override {
- callback_tracker_.OnStartCompleted(
- was_fetched_via_service_worker, was_fallback_required,
- original_url_via_service_worker, response_type_via_service_worker,
- worker_start_time, service_worker_ready_time,
- response_is_in_cache_storage, response_cache_storage_cache_name);
- }
+ void OnPrepareToRestart() override { times_prepare_to_restart_invoked_++; }
ServiceWorkerVersion* GetServiceWorkerVersion(
ServiceWorkerMetrics::URLRequestJobResult* result) override {
@@ -415,7 +299,7 @@ class ServiceWorkerURLRequestJobTest
std::unique_ptr<storage::BlobDataBuilder> blob_data_;
- TestCallbackTracker callback_tracker_;
+ int times_prepare_to_restart_invoked_ = 0;
base::WeakPtr<ServiceWorkerProviderHost> provider_host_;
private:
@@ -426,18 +310,19 @@ TEST_F(ServiceWorkerURLRequestJobTest, Simple) {
version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
TestRequest(200, "OK", std::string(), true /* expect_valid_ssl */);
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
- EXPECT_FALSE(callback_tracker_.response_is_in_cache_storage());
- EXPECT_EQ(std::string(),
- callback_tracker_.response_cache_storage_cache_name());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
+ EXPECT_FALSE(info->response_is_in_cache_storage());
+ EXPECT_EQ(std::string(), info->response_cache_storage_cache_name());
}
class ProviderDeleteHelper : public EmbeddedWorkerTestHelper {
@@ -475,15 +360,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, DeletedProviderHostOnFetchEvent) {
TestRequest(500, "Service Worker Response Error", std::string(),
false /* expect_valid_ssl */);
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
TEST_F(ServiceWorkerURLRequestJobTest, DeletedProviderHostBeforeFetchEvent) {
@@ -500,15 +387,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, DeletedProviderHostBeforeFetchEvent) {
TestRequestResult(500, "Service Worker Response Error", std::string(),
false /* expect_valid_ssl */);
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_TRUE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_TRUE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_TRUE(info->service_worker_start_time().is_null());
+ EXPECT_TRUE(info->service_worker_ready_time().is_null());
}
// Responds to fetch events with a blob.
@@ -559,15 +448,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, BlobResponse) {
version_->SetStatus(ServiceWorkerVersion::ACTIVATED);
TestRequest(200, "OK", expected_response, true /* expect_valid_ssl */);
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
TEST_F(ServiceWorkerURLRequestJobTest, NonExistentBlobUUIDResponse) {
@@ -576,15 +467,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, NonExistentBlobUUIDResponse) {
TestRequest(500, "Service Worker Response Error", std::string(),
true /* expect_valid_ssl */);
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
// Responds to fetch events with a stream.
@@ -647,18 +540,21 @@ TEST_F(ServiceWorkerURLRequestJobTest, StreamResponse) {
EXPECT_EQ("OK",
request_->response_headers()->GetStatusText());
EXPECT_EQ(expected_response, url_request_delegate_.response_data());
- request_.reset();
- EXPECT_FALSE(HasInflightRequests());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
+
+ request_.reset();
+ EXPECT_FALSE(HasInflightRequests());
}
TEST_F(ServiceWorkerURLRequestJobTest, StreamResponse_DelayedRegistration) {
@@ -694,18 +590,21 @@ TEST_F(ServiceWorkerURLRequestJobTest, StreamResponse_DelayedRegistration) {
EXPECT_EQ("OK",
request_->response_headers()->GetStatusText());
EXPECT_EQ(expected_response, url_request_delegate_.response_data());
- request_.reset();
- EXPECT_FALSE(HasInflightRequests());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
+
+ request_.reset();
+ EXPECT_FALSE(HasInflightRequests());
}
@@ -740,18 +639,21 @@ TEST_F(ServiceWorkerURLRequestJobTest, StreamResponse_QuickFinalize) {
EXPECT_EQ("OK",
request_->response_headers()->GetStatusText());
EXPECT_EQ(expected_response, url_request_delegate_.response_data());
- request_.reset();
- EXPECT_FALSE(HasInflightRequests());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
+
+ request_.reset();
+ EXPECT_FALSE(HasInflightRequests());
}
@@ -788,15 +690,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, StreamResponse_Flush) {
request_->response_headers()->GetStatusText());
EXPECT_EQ(expected_response, url_request_delegate_.response_data());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
TEST_F(ServiceWorkerURLRequestJobTest, StreamResponseAndCancel) {
@@ -839,15 +743,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, StreamResponseAndCancel) {
base::RunLoop().RunUntilIdle();
EXPECT_FALSE(request_->status().is_success());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
TEST_F(ServiceWorkerURLRequestJobTest,
@@ -881,8 +787,8 @@ TEST_F(ServiceWorkerURLRequestJobTest,
base::RunLoop().RunUntilIdle();
EXPECT_FALSE(request_->status().is_success());
- EXPECT_EQ(0, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ EXPECT_FALSE(ServiceWorkerResponseInfo::ForRequest(request_.get()));
}
// Helper to simulate failing to dispatch a fetch event to a worker.
@@ -923,10 +829,12 @@ TEST_F(ServiceWorkerURLRequestJobTest, FailFetchDispatch) {
ASSERT_TRUE(host);
EXPECT_EQ(host->controlling_version(), nullptr);
- EXPECT_EQ(0, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(1, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ EXPECT_EQ(1, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
// TODO(horo): Remove this test when crbug.com/485900 is fixed.
@@ -944,15 +852,17 @@ TEST_F(ServiceWorkerURLRequestJobTest, MainScriptHTTPResponseInfoNotSet) {
EXPECT_EQ(200, request_->GetResponseCode());
EXPECT_EQ("", url_request_delegate_.response_data());
- EXPECT_EQ(1, callback_tracker_.times_on_start_completed_invoked());
- EXPECT_EQ(0, callback_tracker_.times_prepare_to_restart_invoked());
- EXPECT_TRUE(callback_tracker_.was_fetched_via_service_worker());
- EXPECT_FALSE(callback_tracker_.was_fallback_required());
- EXPECT_EQ(GURL(), callback_tracker_.original_url_via_service_worker());
+ EXPECT_EQ(0, times_prepare_to_restart_invoked_);
+ ServiceWorkerResponseInfo* info =
+ ServiceWorkerResponseInfo::ForRequest(request_.get());
+ ASSERT_TRUE(info);
+ EXPECT_TRUE(info->was_fetched_via_service_worker());
+ EXPECT_FALSE(info->was_fallback_required());
+ EXPECT_EQ(GURL(), info->original_url_via_service_worker());
EXPECT_EQ(blink::WebServiceWorkerResponseTypeDefault,
- callback_tracker_.response_type_via_service_worker());
- EXPECT_FALSE(callback_tracker_.service_worker_start_time().is_null());
- EXPECT_FALSE(callback_tracker_.service_worker_ready_time().is_null());
+ info->response_type_via_service_worker());
+ EXPECT_FALSE(info->service_worker_start_time().is_null());
+ EXPECT_FALSE(info->service_worker_ready_time().is_null());
}
// TODO(kinuko): Add more tests with different response data and also for
« no previous file with comments | « content/browser/service_worker/service_worker_url_request_job.cc ('k') | content/content_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698