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

Unified Diff: chrome/browser/download/download_util.cc

Issue 22640018: Set up Finch trial for malware download warnings (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: string16 to base string 16 Created 7 years, 4 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/download/download_util.cc
diff --git a/chrome/browser/download/download_util.cc b/chrome/browser/download/download_util.cc
index 8010f97301aaa887eaec16263d701d85170f2102..764ab4b700d1ab9142114e7e961656a8a2ad9674 100644
--- a/chrome/browser/download/download_util.cc
+++ b/chrome/browser/download/download_util.cc
@@ -269,4 +269,91 @@ void RecordDownloadSource(ChromeDownloadSource source) {
"Download.SourcesChrome", source, CHROME_DOWNLOAD_SOURCE_LAST_ENTRY);
}
+// Finch trial -----------------------------------------------------------------
+
+const char kFinchTrialName[] = "MalwareDownloadWarning";
+const char kCondition1Control[] = "Condition1Control";
+const char kCondition2Control[] = "Condition2Control";
+const char kCondition3Malicious[] = "Condition3Malicious";
+const char kCondition4Unsafe[] = "Condition4Unsafe";
+const char kCondition5Dangerous[] = "Condition5Dangerous";
+const char kCondition6Harmful[] = "Condition6Harmful";
+const char kCondition7DiscardSecond[] = "Condition7DiscardSecond";
+const char kCondition8DiscardFirst[] = "Condition8DiscardFirst";
+const char kCondition9SafeDiscard[] = "Condition9SafeDiscard";
+const char kCondition10SafeDontRun[] = "Condition10SafeDontRun";
+
+base::string16 AssembleMalwareFinchString(
+ const std::string& trial_condition, const base::string16& elided_filename) {
+ // Sanity check to make sure we have a filename.
+ base::string16 filename;
+ if (elided_filename.empty()) {
+ filename = ASCIIToUTF16("This file");
+ } else {
+ filename = ReplaceStringPlaceholders(ASCIIToUTF16("File '$1'"),
+ elided_filename,
+ NULL);
+ }
+
+ // Set the message text according to the condition.
+ base::string16 message_text;
+ if (trial_condition == kCondition1Control) {
+ message_text = ASCIIToUTF16("This file appears malicious.");
+ } else if (trial_condition == kCondition2Control) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 appears malicious."),
+ filename,
+ NULL);
Dan Beam 2013/08/09 23:24:51 nit: shaves code, reduces duplication if (trial
felt 2013/08/09 23:48:34 Done.
+ } else if (trial_condition == kCondition3Malicious) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is malicious."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition4Unsafe) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is unsafe."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition5Dangerous) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is dangerous."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition6Harmful) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is harmful."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition7DiscardSecond) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is malicious. Discard this file to stay safe."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition8DiscardFirst) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("Discard this file to stay safe. $1 is malicious."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition9SafeDiscard) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is malicious. To stay safe, discard it."),
+ filename,
+ NULL);
+ } else if (trial_condition == kCondition10SafeDontRun) {
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 is malicious. To stay safe, don't run it."),
+ filename,
+ NULL);
+ } else {
+ // We use the second control as a default for other conditions that don't
+ // change the warning string.
+ message_text = ReplaceStringPlaceholders(
+ ASCIIToUTF16("$1 appears malicious."),
+ filename,
+ NULL);
+ }
+
+ return message_text;
+}
+
} // namespace download_util

Powered by Google App Engine
This is Rietveld 408576698