diff options
19 files changed, 187 insertions, 156 deletions
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn index 3c9b70c..48f1ce1 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn @@ -35,7 +35,6 @@ static_library("browser") { "//chrome/app/resources:platform_locale_settings", "//chrome/app/theme:theme_resources", "//chrome/browser/history:in_memory_url_index_cache_proto", - "//chrome/browser/metrics/variations/proto:proto", "//chrome/browser/net:cert_logger_proto", "//chrome/browser/net:probe_message_proto", "//chrome/browser/search/suggestions/proto", diff --git a/chrome/browser/autocomplete/search_provider.cc b/chrome/browser/autocomplete/search_provider.cc index 3906ef5..adc0de3 100644 --- a/chrome/browser/autocomplete/search_provider.cc +++ b/chrome/browser/autocomplete/search_provider.cc @@ -28,7 +28,6 @@ #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/history/history_service.h" #include "chrome/browser/history/history_service_factory.h" -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" #include "chrome/browser/omnibox/omnibox_field_trial.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/search/search.h" @@ -43,6 +42,7 @@ #include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/search_engines/template_url_prepopulate_data.h" #include "components/search_engines/template_url_service.h" +#include "components/variations/variations_http_header_provider.h" #include "content/public/browser/user_metrics.h" #include "grit/generated_resources.h" #include "net/base/escape.h" @@ -678,7 +678,7 @@ net::URLFetcher* SearchProvider::CreateSuggestFetcher( fetcher->SetLoadFlags(net::LOAD_DO_NOT_SAVE_COOKIES); // Add Chrome experiment state to the request headers. net::HttpRequestHeaders headers; - chrome_variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( + variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( fetcher->GetOriginalURL(), profile_->IsOffTheRecord(), false, &headers); fetcher->SetExtraRequestHeaders(headers.ToString()); fetcher->Start(); diff --git a/chrome/browser/autocomplete/zero_suggest_provider.cc b/chrome/browser/autocomplete/zero_suggest_provider.cc index 87e8ed4..aa9a07b 100644 --- a/chrome/browser/autocomplete/zero_suggest_provider.cc +++ b/chrome/browser/autocomplete/zero_suggest_provider.cc @@ -22,7 +22,6 @@ #include "chrome/browser/autocomplete/search_provider.h" #include "chrome/browser/history/history_types.h" #include "chrome/browser/history/top_sites.h" -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" #include "chrome/browser/omnibox/omnibox_field_trial.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/search_engines/template_url_service_factory.h" @@ -32,6 +31,7 @@ #include "components/metrics/proto/omnibox_input_type.pb.h" #include "components/pref_registry/pref_registry_syncable.h" #include "components/search_engines/template_url_service.h" +#include "components/variations/variations_http_header_provider.h" #include "content/public/browser/user_metrics.h" #include "net/base/escape.h" #include "net/base/load_flags.h" @@ -316,7 +316,7 @@ void ZeroSuggestProvider::Run(const GURL& suggest_url) { fetcher_->SetLoadFlags(net::LOAD_DO_NOT_SAVE_COOKIES); // Add Chrome experiment state to the request headers. net::HttpRequestHeaders headers; - chrome_variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( + variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( fetcher_->GetOriginalURL(), profile_->IsOffTheRecord(), false, &headers); fetcher_->SetExtraRequestHeaders(headers.ToString()); fetcher_->Start(); diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc index 7fa0378..42f2e7b 100644 --- a/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc @@ -61,7 +61,6 @@ #include "chrome/browser/metrics/field_trial_synchronizer.h" #include "chrome/browser/metrics/thread_watcher.h" #include "chrome/browser/metrics/tracking_synchronizer.h" -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" #include "chrome/browser/metrics/variations/variations_service.h" #include "chrome/browser/nacl_host/nacl_browser_delegate_impl.h" #include "chrome/browser/net/chrome_net_log.h" @@ -113,6 +112,7 @@ #include "components/signin/core/common/profile_management_switches.h" #include "components/startup_metric_utils/startup_metric_utils.h" #include "components/translate/core/browser/translate_download_manager.h" +#include "components/variations/variations_http_header_provider.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" @@ -589,8 +589,8 @@ void ChromeBrowserMainParts::SetupMetricsAndFieldTrials() { if (command_line->HasSwitch(switches::kForceVariationIds)) { // Create default variation ids which will always be included in the // X-Client-Data request header. - chrome_variations::VariationsHttpHeaderProvider* provider = - chrome_variations::VariationsHttpHeaderProvider::GetInstance(); + variations::VariationsHttpHeaderProvider* provider = + variations::VariationsHttpHeaderProvider::GetInstance(); bool result = provider->SetDefaultVariationIds( command_line->GetSwitchValueASCII(switches::kForceVariationIds)); CHECK(result) << "Invalid --" << switches::kForceVariationIds diff --git a/chrome/browser/metrics/variations/proto/BUILD.gn b/chrome/browser/metrics/variations/proto/BUILD.gn deleted file mode 100644 index 732e86f..0000000 --- a/chrome/browser/metrics/variations/proto/BUILD.gn +++ /dev/null @@ -1,12 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import("//third_party/protobuf/proto_library.gni") - -# GYP version: chrome/chrome_browser.gypi:variations_proto -proto_library("proto") { - sources = [ - "chrome_experiments.proto", - ] -} diff --git a/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc b/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc index 8bbfbf3..33727e8 100644 --- a/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc +++ b/chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.cc @@ -19,7 +19,6 @@ #include "chrome/browser/download/download_resource_throttle.h" #include "chrome/browser/extensions/api/streams_private/streams_private_api.h" #include "chrome/browser/extensions/user_script_listener.h" -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" #include "chrome/browser/prefetch/prefetch.h" #include "chrome/browser/prerender/prerender_manager.h" #include "chrome/browser/prerender/prerender_manager_factory.h" @@ -40,6 +39,7 @@ #include "chrome/common/render_messages.h" #include "chrome/common/url_constants.h" #include "components/google/core/browser/google_util.h" +#include "components/variations/variations_http_header_provider.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/render_process_host.h" @@ -368,7 +368,7 @@ void ChromeResourceDispatcherHostDelegate::RequestBeginning( net::HttpRequestHeaders headers; headers.CopyFrom(request->extra_request_headers()); bool is_off_the_record = io_data->IsOffTheRecord(); - chrome_variations::VariationsHttpHeaderProvider::GetInstance()-> + variations::VariationsHttpHeaderProvider::GetInstance()-> AppendHeaders(request->url(), is_off_the_record, !is_off_the_record && diff --git a/chrome/browser/search/suggestions/suggestions_service.cc b/chrome/browser/search/suggestions/suggestions_service.cc index 186a937..46ca336 100644 --- a/chrome/browser/search/suggestions/suggestions_service.cc +++ b/chrome/browser/search/suggestions/suggestions_service.cc @@ -13,11 +13,11 @@ #include "base/strings/string_number_conversions.h" #include "base/strings/string_util.h" #include "base/time/time.h" -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" #include "chrome/browser/search/suggestions/blacklist_store.h" #include "chrome/browser/search/suggestions/suggestions_store.h" #include "components/pref_registry/pref_registry_syncable.h" #include "components/variations/variations_associated_data.h" +#include "components/variations/variations_http_header_provider.h" #include "content/public/browser/browser_thread.h" #include "net/base/escape.h" #include "net/base/load_flags.h" @@ -248,7 +248,7 @@ net::URLFetcher* SuggestionsService::CreateSuggestionsRequest(const GURL& url) { request->SetRequestContext(url_request_context_); // Add Chrome experiment state to the request headers. net::HttpRequestHeaders headers; - chrome_variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( + variations::VariationsHttpHeaderProvider::GetInstance()->AppendHeaders( request->GetOriginalURL(), false, false, &headers); request->SetExtraRequestHeaders(headers.ToString()); return request; diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 5e63b46..c098d87 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -753,8 +753,6 @@ 'browser/metrics/tracking_synchronizer.h', 'browser/metrics/tracking_synchronizer_observer.h', 'browser/metrics/variations/generated_resources_map.h', - 'browser/metrics/variations/variations_http_header_provider.cc', - 'browser/metrics/variations/variations_http_header_provider.h', 'browser/metrics/variations/variations_registry_syncer_win.cc', 'browser/metrics/variations/variations_registry_syncer_win.h', 'browser/metrics/variations/variations_request_scheduler.cc', @@ -2835,7 +2833,6 @@ 'in_memory_url_index_cache_proto', 'probe_message_proto', 'suggestions_proto', - 'variations_proto', '../components/components.gyp:autocomplete', '../components/components.gyp:autofill_core_browser', '../components/components.gyp:bookmarks_browser', @@ -3406,21 +3403,6 @@ ], }, { - # Protobuf compiler / generator for UMA (User Metrics Analysis). - - # GN version: //chrome/browser/metrics/variations/proto:proto - 'target_name': 'variations_proto', - 'type': 'static_library', - 'sources': [ - 'browser/metrics/variations/proto/chrome_experiments.proto', - ], - 'variables': { - 'proto_in_dir': 'browser/metrics/variations/proto', - 'proto_out_dir': 'chrome/browser/metrics/variations/proto', - }, - 'includes': [ '../build/protoc.gypi' ], - }, - { # Protobuf compiler / generator for the fraudulent certificate reporting # protocol buffer. # GN version: //chrome/browser/net:cert_logger_proto diff --git a/chrome/chrome_tests_unit.gypi b/chrome/chrome_tests_unit.gypi index a41581d..dcaa637 100644 --- a/chrome/chrome_tests_unit.gypi +++ b/chrome/chrome_tests_unit.gypi @@ -1109,7 +1109,6 @@ 'browser/metrics/thread_watcher_unittest.cc', 'browser/metrics/thread_watcher_android_unittest.cc', 'browser/metrics/time_ticks_experiment_unittest.cc', - 'browser/metrics/variations/variations_http_header_provider_unittest.cc', 'browser/metrics/variations/variations_request_scheduler_mobile_unittest.cc', 'browser/metrics/variations/variations_request_scheduler_unittest.cc', 'browser/metrics/variations/variations_seed_store_unittest.cc', diff --git a/components/components_tests.gyp b/components/components_tests.gyp index 49a3281..96e1026 100644 --- a/components/components_tests.gyp +++ b/components/components_tests.gyp @@ -201,6 +201,7 @@ 'variations/metrics_util_unittest.cc', 'variations/study_filtering_unittest.cc', 'variations/variations_associated_data_unittest.cc', + 'variations/variations_http_header_provider_unittest.cc', 'variations/variations_seed_processor_unittest.cc', 'variations/variations_seed_simulator_unittest.cc', 'visitedlink/test/visitedlink_unittest.cc', @@ -283,6 +284,9 @@ 'components.gyp:history_core_browser', 'components.gyp:history_core_common', + # Dependencies of infobar + 'components.gyp:infobars_test_support', + # Dependencies of invalidation 'components.gyp:invalidation', 'components.gyp:invalidation_test_support', diff --git a/components/infobars.gypi b/components/infobars.gypi index cb9c2b1..d322517 100644 --- a/components/infobars.gypi +++ b/components/infobars.gypi @@ -32,5 +32,19 @@ 'infobars/core/infobars_switches.h', ], }, + { + 'target_name': 'infobars_test_support', + 'type': 'static_library', + 'include_dirs': [ + '..', + ], + 'dependencies': [ + '../base/base.gyp:base', + '../skia/skia.gyp:skia', + ], + 'sources': [ + 'infobars/test/infobar_test.cc', + ], + }, ], } diff --git a/components/infobars/test/infobar_test.cc b/components/infobars/test/infobar_test.cc new file mode 100644 index 0000000..a2f17bb --- /dev/null +++ b/components/infobars/test/infobar_test.cc @@ -0,0 +1,31 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "base/logging.h" +#include "base/memory/scoped_ptr.h" +#include "components/infobars/core/confirm_infobar_delegate.h" +#include "components/infobars/core/infobar.h" + +// Provides dummy definitions of static variables and functions that are +// declared in the component but defined in the embedder in order to allow +// components_unittests to link. +// TODO(blundell): The component shouldn't be declaring statics that it's not +// defining. crbug.com/386171 + +// On Android, these variables are defined in ../core/infobar_android.cc. +#if !defined(OS_ANDROID) +const int infobars::InfoBar::kSeparatorLineHeight = 1; +const int infobars::InfoBar::kDefaultArrowTargetHeight = 9; +const int infobars::InfoBar::kMaximumArrowTargetHeight = 24; +const int infobars::InfoBar::kDefaultArrowTargetHalfWidth = + kDefaultArrowTargetHeight; +const int infobars::InfoBar::kMaximumArrowTargetHalfWidth = 14; +const int infobars::InfoBar::kDefaultBarTargetHeight = 36; +#endif + +scoped_ptr<infobars::InfoBar> ConfirmInfoBarDelegate::CreateInfoBar( + scoped_ptr<ConfirmInfoBarDelegate> delegate) { + NOTREACHED(); + return scoped_ptr<infobars::InfoBar>(); +} diff --git a/components/variations.gypi b/components/variations.gypi index 2ae6ffc..1751336 100644 --- a/components/variations.gypi +++ b/components/variations.gypi @@ -14,6 +14,7 @@ 'dependencies': [ '../base/base.gyp:base', '../third_party/mt19937ar/mt19937ar.gyp:mt19937ar', + 'components.gyp:google_core_browser', ], 'sources': [ 'variations/active_field_trials.cc', @@ -32,6 +33,7 @@ 'variations/pref_names.h', 'variations/processed_study.cc', 'variations/processed_study.h', + 'variations/proto/chrome_experiments.proto', 'variations/proto/permuted_entropy_cache.proto', 'variations/proto/study.proto', 'variations/proto/variations_seed.proto', @@ -39,6 +41,8 @@ 'variations/study_filtering.h', 'variations/variations_associated_data.cc', 'variations/variations_associated_data.h', + 'variations/variations_http_header_provider.cc', + 'variations/variations_http_header_provider.h', 'variations/variations_seed_processor.cc', 'variations/variations_seed_processor.h', 'variations/variations_seed_simulator.cc', diff --git a/components/variations/DEPS b/components/variations/DEPS index 6448868..1a790cd 100644 --- a/components/variations/DEPS +++ b/components/variations/DEPS @@ -1,3 +1,5 @@ include_rules = [ + "+components/google", + "+net", "+third_party/mt19937ar", ] diff --git a/components/variations/proto/BUILD.gn b/components/variations/proto/BUILD.gn index 5895d57..e943e57 100644 --- a/components/variations/proto/BUILD.gn +++ b/components/variations/proto/BUILD.gn @@ -6,6 +6,7 @@ import("//third_party/protobuf/proto_library.gni") proto_library("proto") { sources = [ + "chrome_experiments.proto", "permuted_entropy_cache.proto", "study.proto", "variations_seed.proto", diff --git a/chrome/browser/metrics/variations/proto/chrome_experiments.proto b/components/variations/proto/chrome_experiments.proto index 28bf22d..28bf22d 100644 --- a/chrome/browser/metrics/variations/proto/chrome_experiments.proto +++ b/components/variations/proto/chrome_experiments.proto diff --git a/chrome/browser/metrics/variations/variations_http_header_provider.cc b/components/variations/variations_http_header_provider.cc index d45c1c4..bc613df 100644 --- a/chrome/browser/metrics/variations/variations_http_header_provider.cc +++ b/components/variations/variations_http_header_provider.cc @@ -1,8 +1,8 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" +#include "components/variations/variations_http_header_provider.h" #include <vector> @@ -12,13 +12,19 @@ #include "base/strings/string_number_conversions.h" #include "base/strings/string_split.h" #include "base/strings/string_util.h" -#include "chrome/browser/metrics/variations/proto/chrome_experiments.pb.h" #include "components/google/core/browser/google_util.h" +#include "components/variations/proto/chrome_experiments.pb.h" #include "net/base/registry_controlled_domains/registry_controlled_domain.h" #include "net/http/http_request_headers.h" #include "url/gurl.h" -namespace chrome_variations { +// TODO(mathp): Once the move to variations namespace is complete, remove these. +using chrome_variations::EMPTY_ID; +using chrome_variations::GOOGLE_WEB_PROPERTIES; +using chrome_variations::GOOGLE_WEB_PROPERTIES_TRIGGER; +using chrome_variations::VariationID; + +namespace variations { namespace { @@ -256,4 +262,4 @@ bool VariationsHttpHeaderProvider::ShouldAppendHeaders(const GURL& url) { google_util::ALLOW_NON_STANDARD_PORTS); } -} // namespace chrome_variations +} // namespace variations diff --git a/chrome/browser/metrics/variations/variations_http_header_provider.h b/components/variations/variations_http_header_provider.h index 4b7d9a8..8bd15ab 100644 --- a/chrome/browser/metrics/variations/variations_http_header_provider.h +++ b/components/variations/variations_http_header_provider.h @@ -1,9 +1,9 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_METRICS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ -#define CHROME_BROWSER_METRICS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ +#ifndef COMPONENTS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ +#define COMPONENTS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ #include <set> #include <string> @@ -23,12 +23,10 @@ class HttpRequestHeaders; } class GURL; -class Profile; -class ProfileIOData; template <typename T> struct DefaultSingletonTraits; -namespace chrome_variations { +namespace variations { // A helper class for maintaining Chrome experiments and metrics state // transmitted in custom HTTP request headers. @@ -110,6 +108,6 @@ class VariationsHttpHeaderProvider : base::FieldTrialList::Observer { DISALLOW_COPY_AND_ASSIGN(VariationsHttpHeaderProvider); }; -} // namespace chrome_variations +} // namespace variations -#endif // CHROME_BROWSER_METRICS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ +#endif // COMPONENTS_VARIATIONS_VARIATIONS_HTTP_HEADER_PROVIDER_H_ diff --git a/chrome/browser/metrics/variations/variations_http_header_provider_unittest.cc b/components/variations/variations_http_header_provider_unittest.cc index 2e644c4..78148b3 100644 --- a/chrome/browser/metrics/variations/variations_http_header_provider_unittest.cc +++ b/components/variations/variations_http_header_provider_unittest.cc @@ -1,8 +1,8 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/metrics/variations/variations_http_header_provider.h" +#include "components/variations/variations_http_header_provider.h" #include <string> @@ -10,14 +10,20 @@ #include "base/message_loop/message_loop.h" #include "base/metrics/field_trial.h" #include "base/run_loop.h" -#include "chrome/browser/metrics/variations/proto/chrome_experiments.pb.h" #include "components/variations/entropy_provider.h" +#include "components/variations/proto/chrome_experiments.pb.h" #include "components/variations/variations_associated_data.h" #include "net/http/http_request_headers.h" #include "testing/gtest/include/gtest/gtest.h" #include "url/gurl.h" -namespace chrome_variations { +// TODO(mathp): Remove once everything is under namespace 'variations'. +using chrome_variations::GOOGLE_WEB_PROPERTIES; +using chrome_variations::GOOGLE_WEB_PROPERTIES_TRIGGER; +using chrome_variations::IDCollectionKey; +using chrome_variations::VariationID; + +namespace variations { namespace { @@ -26,11 +32,9 @@ bool ExtractVariationIds(const std::string& variations, std::set<VariationID>* variation_ids, std::set<VariationID>* trigger_ids) { std::string serialized_proto; - if (!base::Base64Decode(variations, &serialized_proto)) - return false; + if (!base::Base64Decode(variations, &serialized_proto)) return false; metrics::ChromeVariations proto; - if (!proto.ParseFromString(serialized_proto)) - return false; + if (!proto.ParseFromString(serialized_proto)) return false; for (int i = 0; i < proto.variation_id_size(); ++i) variation_ids->insert(proto.variation_id(i)); for (int i = 0; i < proto.trigger_variation_id_size(); ++i) @@ -39,10 +43,8 @@ bool ExtractVariationIds(const std::string& variations, } scoped_refptr<base::FieldTrial> CreateTrialAndAssociateId( - const std::string& trial_name, - const std::string& default_group_name, - IDCollectionKey key, - VariationID id) { + const std::string& trial_name, const std::string& default_group_name, + IDCollectionKey key, VariationID id) { scoped_refptr<base::FieldTrial> trial( base::FieldTrialList::CreateFieldTrial(trial_name, default_group_name)); @@ -61,7 +63,7 @@ class VariationsHttpHeaderProviderTest : public ::testing::Test { virtual ~VariationsHttpHeaderProviderTest() {} virtual void TearDown() OVERRIDE { - testing::ClearAllVariationIDs(); + chrome_variations::testing::ClearAllVariationIDs(); } }; @@ -70,96 +72,97 @@ TEST_F(VariationsHttpHeaderProviderTest, ShouldAppendHeaders) { const char* url; bool should_append_headers; } cases[] = { - { "http://google.com", true }, - { "http://www.google.com", true }, - { "http://m.google.com", true }, - { "http://google.ca", true }, - { "https://google.ca", true }, - { "http://google.co.uk", true }, - { "http://google.co.uk:8080/", true }, - { "http://www.google.co.uk:8080/", true }, - { "http://google", false }, - - { "http://youtube.com", true }, - { "http://www.youtube.com", true }, - { "http://www.youtube.ca", true }, - { "http://www.youtube.co.uk:8080/", true }, - { "https://www.youtube.com", true }, - { "http://youtube", false }, - - { "http://www.yahoo.com", false }, - - { "http://ad.doubleclick.net", true }, - { "https://a.b.c.doubleclick.net", true }, - { "https://a.b.c.doubleclick.net:8081", true }, - { "http://www.doubleclick.com", true }, - { "http://www.doubleclick.org", false }, - { "http://www.doubleclick.net.com", false }, - { "https://www.doubleclick.net.com", false }, - - { "http://ad.googlesyndication.com", true }, - { "https://a.b.c.googlesyndication.com", true }, - { "https://a.b.c.googlesyndication.com:8080", true }, - { "http://www.doubleclick.edu", false }, - { "http://www.googlesyndication.com.edu", false }, - { "https://www.googlesyndication.com.com", false }, - - { "http://www.googleadservices.com", true }, - { "http://www.googleadservices.com:8080", true }, - { "https://www.googleadservices.com", true }, - { "https://www.internal.googleadservices.com", true }, - { "https://www2.googleadservices.com", true }, - { "https://www.googleadservices.org", false }, - { "https://www.googleadservices.com.co.uk", false }, - - { "http://WWW.ANDROID.COM", true }, - { "http://www.android.com", true }, - { "http://www.doubleclick.com", true }, - { "http://www.doubleclick.net", true }, - { "http://www.ggpht.com", true }, - { "http://www.googleadservices.com", true }, - { "http://www.googleapis.com", true }, - { "http://www.googlesyndication.com", true }, - { "http://www.googleusercontent.com", true }, - { "http://www.googlevideo.com", true }, - { "http://ssl.gstatic.com", true }, - { "http://www.gstatic.com", true }, - { "http://www.ytimg.com", true }, - { "http://wwwytimg.com", false }, - { "http://ytimg.com", false }, - - { "http://www.android.org", false }, - { "http://www.doubleclick.org", false }, - { "http://www.doubleclick.net", true }, - { "http://www.ggpht.org", false }, - { "http://www.googleadservices.org", false }, - { "http://www.googleapis.org", false }, - { "http://www.googlesyndication.org", false }, - { "http://www.googleusercontent.org", false }, - { "http://www.googlevideo.org", false }, - { "http://ssl.gstatic.org", false }, - { "http://www.gstatic.org", false }, - { "http://www.ytimg.org", false }, - - { "http://a.b.android.com", true }, - { "http://a.b.doubleclick.com", true }, - { "http://a.b.doubleclick.net", true }, - { "http://a.b.ggpht.com", true }, - { "http://a.b.googleadservices.com", true }, - { "http://a.b.googleapis.com", true }, - { "http://a.b.googlesyndication.com", true }, - { "http://a.b.googleusercontent.com", true }, - { "http://a.b.googlevideo.com", true }, - { "http://ssl.gstatic.com", true }, - { "http://a.b.gstatic.com", true }, - { "http://a.b.ytimg.com", true }, - - }; + {"http://google.com", true}, + {"http://www.google.com", true}, + {"http://m.google.com", true}, + {"http://google.ca", true}, + {"https://google.ca", true}, + {"http://google.co.uk", true}, + {"http://google.co.uk:8080/", true}, + {"http://www.google.co.uk:8080/", true}, + {"http://google", false}, + + {"http://youtube.com", true}, + {"http://www.youtube.com", true}, + {"http://www.youtube.ca", true}, + {"http://www.youtube.co.uk:8080/", true}, + {"https://www.youtube.com", true}, + {"http://youtube", false}, + + {"http://www.yahoo.com", false}, + + {"http://ad.doubleclick.net", true}, + {"https://a.b.c.doubleclick.net", true}, + {"https://a.b.c.doubleclick.net:8081", true}, + {"http://www.doubleclick.com", true}, + {"http://www.doubleclick.org", false}, + {"http://www.doubleclick.net.com", false}, + {"https://www.doubleclick.net.com", false}, + + {"http://ad.googlesyndication.com", true}, + {"https://a.b.c.googlesyndication.com", true}, + {"https://a.b.c.googlesyndication.com:8080", true}, + {"http://www.doubleclick.edu", false}, + {"http://www.googlesyndication.com.edu", false}, + {"https://www.googlesyndication.com.com", false}, + + {"http://www.googleadservices.com", true}, + {"http://www.googleadservices.com:8080", true}, + {"https://www.googleadservices.com", true}, + {"https://www.internal.googleadservices.com", true}, + {"https://www2.googleadservices.com", true}, + {"https://www.googleadservices.org", false}, + {"https://www.googleadservices.com.co.uk", false}, + + {"http://WWW.ANDROID.COM", true}, + {"http://www.android.com", true}, + {"http://www.doubleclick.com", true}, + {"http://www.doubleclick.net", true}, + {"http://www.ggpht.com", true}, + {"http://www.googleadservices.com", true}, + {"http://www.googleapis.com", true}, + {"http://www.googlesyndication.com", true}, + {"http://www.googleusercontent.com", true}, + {"http://www.googlevideo.com", true}, + {"http://ssl.gstatic.com", true}, + {"http://www.gstatic.com", true}, + {"http://www.ytimg.com", true}, + {"http://wwwytimg.com", false}, + {"http://ytimg.com", false}, + + {"http://www.android.org", false}, + {"http://www.doubleclick.org", false}, + {"http://www.doubleclick.net", true}, + {"http://www.ggpht.org", false}, + {"http://www.googleadservices.org", false}, + {"http://www.googleapis.org", false}, + {"http://www.googlesyndication.org", false}, + {"http://www.googleusercontent.org", false}, + {"http://www.googlevideo.org", false}, + {"http://ssl.gstatic.org", false}, + {"http://www.gstatic.org", false}, + {"http://www.ytimg.org", false}, + + {"http://a.b.android.com", true}, + {"http://a.b.doubleclick.com", true}, + {"http://a.b.doubleclick.net", true}, + {"http://a.b.ggpht.com", true}, + {"http://a.b.googleadservices.com", true}, + {"http://a.b.googleapis.com", true}, + {"http://a.b.googlesyndication.com", true}, + {"http://a.b.googleusercontent.com", true}, + {"http://a.b.googlevideo.com", true}, + {"http://ssl.gstatic.com", true}, + {"http://a.b.gstatic.com", true}, + {"http://a.b.ytimg.com", true}, + + }; for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { const GURL url(cases[i].url); EXPECT_EQ(cases[i].should_append_headers, - VariationsHttpHeaderProvider::ShouldAppendHeaders(url)) << url; + VariationsHttpHeaderProvider::ShouldAppendHeaders(url)) + << url; } } @@ -239,4 +242,4 @@ TEST_F(VariationsHttpHeaderProviderTest, OnFieldTrialGroupFinalized) { EXPECT_TRUE(trigger_ids.find(456) != trigger_ids.end()); } -} // namespace chrome_variations +} // namespace variations |