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

Unified Diff: chrome/browser/metrics/variations/variations_service.cc

Issue 11737025: Add a switch for faking channels for Variations filtering. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Honour set channels Created 7 years, 12 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: chrome/browser/metrics/variations/variations_service.cc
diff --git a/chrome/browser/metrics/variations/variations_service.cc b/chrome/browser/metrics/variations/variations_service.cc
index b4e12da5b1bb716dbe4b3ddb0f88b9d6b3ae6461..7fdf5f46c9e62519d1f03f2f18d8b352c43da387 100644
--- a/chrome/browser/metrics/variations/variations_service.cc
+++ b/chrome/browser/metrics/variations/variations_service.cc
@@ -277,12 +277,35 @@ bool VariationsService::StoreSeedData(const std::string& seed_data,
}
// static
+chrome::VersionInfo::Channel VariationsService::GetChannelForVariations() {
+ chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel();
+ if (channel != chrome::VersionInfo::CHANNEL_UNKNOWN)
+ return channel;
+ std::string forced_channel =
+ CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
+ switches::kFakeVariationsChannel);
+ if (!forced_channel.empty()) {
+ if (forced_channel == "stable")
+ channel = chrome::VersionInfo::CHANNEL_STABLE;
+ else if (forced_channel == "beta")
+ channel = chrome::VersionInfo::CHANNEL_BETA;
+ else if (forced_channel == "dev")
+ channel = chrome::VersionInfo::CHANNEL_DEV;
+ else if (forced_channel == "canary")
+ channel = chrome::VersionInfo::CHANNEL_CANARY;
+ else
+ NOTREACHED();
+ }
+ return channel;
+}
+
+// static
bool VariationsService::ShouldAddStudy(
const Study& study,
const chrome::VersionInfo& version_info,
const base::Time& reference_date) {
if (study.has_filter()) {
- if (!CheckStudyChannel(study.filter(), chrome::VersionInfo::GetChannel())) {
+ if (!CheckStudyChannel(study.filter(), GetChannelForVariations())) {
DVLOG(1) << "Filtered out study " << study.name() << " due to channel.";
return false;
}

Powered by Google App Engine
This is Rietveld 408576698