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

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

Issue 1656933003: Add origins argument to registerForeignFetchScopes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
Index: content/browser/service_worker/service_worker_version_unittest.cc
diff --git a/content/browser/service_worker/service_worker_version_unittest.cc b/content/browser/service_worker/service_worker_version_unittest.cc
index 04cab83f8404ddc52676d808f675f85f859a7f2d..309627ed36bed16574a72330362437a0ade4cbbe 100644
--- a/content/browser/service_worker/service_worker_version_unittest.cc
+++ b/content/browser/service_worker/service_worker_version_unittest.cc
@@ -1130,43 +1130,69 @@ TEST_F(ServiceWorkerVersionTest, RegisterForeignFetchScopes) {
EXPECT_EQ(ServiceWorkerVersion::RUNNING, version_->running_status());
EXPECT_EQ(0, helper_->mock_render_process_host()->bad_msg_count());
+ GURL valid_scope_1("http://www.example.com/test/subscope");
+ GURL valid_scope_2("http://www.example.com/test/othersubscope");
+ std::vector<GURL> valid_scopes;
+ valid_scopes.push_back(valid_scope_1);
+ valid_scopes.push_back(valid_scope_2);
+
+ std::vector<GURL> all_origins;
+ GURL valid_origin("https://chromium.org/");
+ std::vector<GURL> valid_origin_list(1, valid_origin);
+
// Invalid URL, should kill worker (but in tests will only increase bad
falken 2016/02/03 02:17:31 nit: Now URL is ambiguous since there are both sub
Marijn Kruisselbrink 2016/02/03 17:53:30 Done
// message count).
- version_->OnRegisterForeignFetchScopes(std::vector<GURL>(1, GURL()));
+ version_->OnRegisterForeignFetchScopes(std::vector<GURL>(1, GURL()),
+ valid_origin_list);
base::RunLoop().RunUntilIdle();
EXPECT_EQ(1, helper_->mock_render_process_host()->bad_msg_count());
EXPECT_EQ(0u, version_->foreign_fetch_scopes_.size());
+ EXPECT_EQ(0u, version_->foreign_fetch_origins_.size());
// URL outside the scope of the worker.
version_->OnRegisterForeignFetchScopes(
- std::vector<GURL>(1, GURL("http://www.example.com/wrong")));
+ std::vector<GURL>(1, GURL("http://www.example.com/wrong")),
+ valid_origin_list);
base::RunLoop().RunUntilIdle();
EXPECT_EQ(2, helper_->mock_render_process_host()->bad_msg_count());
EXPECT_EQ(0u, version_->foreign_fetch_scopes_.size());
+ EXPECT_EQ(0u, version_->foreign_fetch_origins_.size());
// URL on wrong origin.
version_->OnRegisterForeignFetchScopes(
- std::vector<GURL>(1, GURL("http://example.com/test/")));
+ std::vector<GURL>(1, GURL("http://example.com/test/")),
+ valid_origin_list);
base::RunLoop().RunUntilIdle();
EXPECT_EQ(3, helper_->mock_render_process_host()->bad_msg_count());
EXPECT_EQ(0u, version_->foreign_fetch_scopes_.size());
+ EXPECT_EQ(0u, version_->foreign_fetch_origins_.size());
+
+ // Invalid URL passed for origin.
+ version_->OnRegisterForeignFetchScopes(valid_scopes,
+ std::vector<GURL>(1, GURL()));
+ base::RunLoop().RunUntilIdle();
+ EXPECT_EQ(4, helper_->mock_render_process_host()->bad_msg_count());
+ EXPECT_EQ(0u, version_->foreign_fetch_scopes_.size());
+ EXPECT_EQ(0u, version_->foreign_fetch_origins_.size());
// Valid URL 1.
- GURL valid_scope_1("http://www.example.com/test/subscope");
- version_->OnRegisterForeignFetchScopes(std::vector<GURL>(1, valid_scope_1));
+ version_->OnRegisterForeignFetchScopes(std::vector<GURL>(1, valid_scope_1),
+ all_origins);
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(3, helper_->mock_render_process_host()->bad_msg_count());
+ EXPECT_EQ(4, helper_->mock_render_process_host()->bad_msg_count());
EXPECT_EQ(1u, version_->foreign_fetch_scopes_.size());
EXPECT_EQ(valid_scope_1, version_->foreign_fetch_scopes_[0]);
+ EXPECT_EQ(0u, version_->foreign_fetch_origins_.size());
- // Valid URL 2.
- GURL valid_scope_2("http://www.example.com/test/subscope");
- version_->OnRegisterForeignFetchScopes(std::vector<GURL>(1, valid_scope_2));
+ // Valid URL 2, with explicit origins.
+ version_->OnRegisterForeignFetchScopes(valid_scopes, valid_origin_list);
base::RunLoop().RunUntilIdle();
- EXPECT_EQ(3, helper_->mock_render_process_host()->bad_msg_count());
+ EXPECT_EQ(4, helper_->mock_render_process_host()->bad_msg_count());
EXPECT_EQ(2u, version_->foreign_fetch_scopes_.size());
EXPECT_EQ(valid_scope_1, version_->foreign_fetch_scopes_[0]);
EXPECT_EQ(valid_scope_2, version_->foreign_fetch_scopes_[1]);
+ EXPECT_EQ(1u, version_->foreign_fetch_origins_.size());
+ EXPECT_EQ(valid_origin, version_->foreign_fetch_origins_[0]);
}
TEST_F(ServiceWorkerVersionTest, RendererCrashDuringEvent) {

Powered by Google App Engine
This is Rietveld 408576698