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

Unified Diff: chrome/browser/extensions/updater/extension_updater_unittest.cc

Issue 2823923002: [Extensions] Only add traffic management headers for webstore updates (Closed)
Patch Set: Created 3 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 | « no previous file | extensions/browser/updater/extension_downloader.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/updater/extension_updater_unittest.cc
diff --git a/chrome/browser/extensions/updater/extension_updater_unittest.cc b/chrome/browser/extensions/updater/extension_updater_unittest.cc
index 52c56eab16aa65c586944a12f84363c6a85b85f2..62be41decdae56c927bf245155e6a4b8689fa969 100644
--- a/chrome/browser/extensions/updater/extension_updater_unittest.cc
+++ b/chrome/browser/extensions/updater/extension_updater_unittest.cc
@@ -811,19 +811,19 @@ class ExtensionUpdaterTest : public testing::Test {
EXPECT_EQ("a%3D1%26b%3D2%26c", params["ap"]);
}
- void TestUpdateUrlDataFromGallery(
- const std::string& gallery_url,
+ void TestUpdateUrlDataFromUrl(
+ const std::string& update_url,
ManifestFetchData::FetchPriority fetch_priority,
- int num_extensions) {
+ int num_extensions,
+ bool should_include_traffic_management_headers) {
net::TestURLFetcherFactory factory;
MockService service(prefs_.get());
MockExtensionDownloaderDelegate delegate;
ExtensionDownloader downloader(&delegate, service.request_context());
ExtensionList extensions;
- std::string url(gallery_url);
- service.CreateTestExtensions(1, num_extensions, &extensions, &url,
+ service.CreateTestExtensions(1, num_extensions, &extensions, &update_url,
Manifest::INTERNAL);
for (int i = 0; i < num_extensions; ++i) {
@@ -839,49 +839,53 @@ class ExtensionUpdaterTest : public testing::Test {
ASSERT_TRUE(fetcher);
// Make sure that extensions that update from the gallery ignore any
// update URL data.
- const std::string& update_url = fetcher->GetOriginalURL().spec();
- std::string::size_type x = update_url.find("x=");
+ const std::string& fetcher_url = fetcher->GetOriginalURL().spec();
+ std::string::size_type x = fetcher_url.find("x=");
EXPECT_NE(std::string::npos, x);
- std::string::size_type ap = update_url.find("ap%3D", x);
+ std::string::size_type ap = fetcher_url.find("ap%3D", x);
EXPECT_EQ(std::string::npos, ap);
net::HttpRequestHeaders fetch_headers;
fetcher->GetExtraRequestHeaders(&fetch_headers);
- EXPECT_TRUE(fetch_headers.HasHeader(
- ExtensionDownloader::kUpdateInteractivityHeader));
- EXPECT_TRUE(
- fetch_headers.HasHeader(ExtensionDownloader::kUpdateAppIdHeader));
- EXPECT_TRUE(
+ EXPECT_EQ(should_include_traffic_management_headers,
+ fetch_headers.HasHeader(
+ ExtensionDownloader::kUpdateInteractivityHeader));
+ EXPECT_EQ(should_include_traffic_management_headers,
+ fetch_headers.HasHeader(ExtensionDownloader::kUpdateAppIdHeader));
+ EXPECT_EQ(
+ should_include_traffic_management_headers,
fetch_headers.HasHeader(ExtensionDownloader::kUpdateUpdaterHeader));
- std::string interactivity_value;
- fetch_headers.GetHeader(ExtensionDownloader::kUpdateInteractivityHeader,
- &interactivity_value);
-
- std::string expected_interactivity_value =
- fetch_priority == ManifestFetchData::FetchPriority::FOREGROUND ? "fg"
- : "bg";
- EXPECT_EQ(expected_interactivity_value, interactivity_value);
-
- std::string appid_value;
- fetch_headers.GetHeader(ExtensionDownloader::kUpdateAppIdHeader,
- &appid_value);
- if (num_extensions > 1) {
- for (int i = 0; i < num_extensions; ++i) {
- EXPECT_TRUE(
- testing::IsSubstring("", "", extensions[i]->id(), appid_value));
+ if (should_include_traffic_management_headers) {
+ std::string interactivity_value;
+ fetch_headers.GetHeader(ExtensionDownloader::kUpdateInteractivityHeader,
+ &interactivity_value);
+
+ std::string expected_interactivity_value =
+ fetch_priority == ManifestFetchData::FetchPriority::FOREGROUND ? "fg"
+ : "bg";
+ EXPECT_EQ(expected_interactivity_value, interactivity_value);
+
+ std::string appid_value;
+ fetch_headers.GetHeader(ExtensionDownloader::kUpdateAppIdHeader,
+ &appid_value);
+ if (num_extensions > 1) {
+ for (int i = 0; i < num_extensions; ++i) {
+ EXPECT_TRUE(
+ testing::IsSubstring("", "", extensions[i]->id(), appid_value));
+ }
+ } else {
+ EXPECT_EQ(extensions[0]->id(), appid_value);
}
- } else {
- EXPECT_EQ(extensions[0]->id(), appid_value);
- }
- std::string updater_value;
- fetch_headers.GetHeader(ExtensionDownloader::kUpdateUpdaterHeader,
- &updater_value);
- std::string expected_updater_value = base::StringPrintf(
- "%s-%s", UpdateQueryParams::GetProdIdString(UpdateQueryParams::CRX),
- UpdateQueryParams::GetProdVersion().c_str());
- EXPECT_EQ(expected_updater_value, updater_value);
+ std::string updater_value;
+ fetch_headers.GetHeader(ExtensionDownloader::kUpdateUpdaterHeader,
+ &updater_value);
+ std::string expected_updater_value = base::StringPrintf(
Sorin Jianu 2017/04/19 16:02:20 this can be const.
Devlin 2017/04/19 17:59:24 Done.
+ "%s-%s", UpdateQueryParams::GetProdIdString(UpdateQueryParams::CRX),
+ UpdateQueryParams::GetProdVersion().c_str());
+ EXPECT_EQ(expected_updater_value, updater_value);
+ }
}
void TestInstallSource() {
@@ -2017,14 +2021,18 @@ TEST_F(ExtensionUpdaterTest, TestUpdateUrlData) {
TestUpdateUrlDataEmpty();
TestUpdateUrlDataSimple();
TestUpdateUrlDataCompound();
- TestUpdateUrlDataFromGallery(extension_urls::GetWebstoreUpdateUrl().spec(),
- ManifestFetchData::FetchPriority::BACKGROUND, 1);
- TestUpdateUrlDataFromGallery(extension_urls::GetWebstoreUpdateUrl().spec(),
- ManifestFetchData::FetchPriority::FOREGROUND, 1);
- TestUpdateUrlDataFromGallery(extension_urls::GetWebstoreUpdateUrl().spec(),
- ManifestFetchData::FetchPriority::BACKGROUND, 2);
- TestUpdateUrlDataFromGallery(extension_urls::GetWebstoreUpdateUrl().spec(),
- ManifestFetchData::FetchPriority::FOREGROUND, 4);
+ std::string gallery_url_spec = extension_urls::GetWebstoreUpdateUrl().spec();
+ TestUpdateUrlDataFromUrl(
+ gallery_url_spec, ManifestFetchData::FetchPriority::BACKGROUND, 1, true);
+ TestUpdateUrlDataFromUrl(
+ gallery_url_spec, ManifestFetchData::FetchPriority::FOREGROUND, 1, true);
+ TestUpdateUrlDataFromUrl(
+ gallery_url_spec, ManifestFetchData::FetchPriority::BACKGROUND, 2, true);
+ TestUpdateUrlDataFromUrl(
+ gallery_url_spec, ManifestFetchData::FetchPriority::FOREGROUND, 4, true);
+ TestUpdateUrlDataFromUrl("http://example.com/update",
+ ManifestFetchData::FetchPriority::FOREGROUND, 4,
+ false);
}
TEST_F(ExtensionUpdaterTest, TestInstallSource) {
« no previous file with comments | « no previous file | extensions/browser/updater/extension_downloader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698