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

Unified Diff: chrome/browser/omnibox/omnibox_field_trial_unittest.cc

Issue 20777006: Omnibox: Create Bundled Field Trial; Convert SearchHistory trial to it (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: make GetConsequences private for now Created 7 years, 5 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/omnibox/omnibox_field_trial_unittest.cc
diff --git a/chrome/browser/omnibox/omnibox_field_trial_unittest.cc b/chrome/browser/omnibox/omnibox_field_trial_unittest.cc
index b40be13d9daaf55a1113e9a5c48a5d698b48c121..57621ad982919838bf3397253d2c9c40ff683bdf 100644
--- a/chrome/browser/omnibox/omnibox_field_trial_unittest.cc
+++ b/chrome/browser/omnibox/omnibox_field_trial_unittest.cc
@@ -8,6 +8,7 @@
#include "base/metrics/field_trial.h"
#include "base/strings/string16.h"
#include "chrome/common/metrics/entropy_provider.h"
+#include "chrome/common/metrics/variations/variations_util.h"
#include "testing/gtest/include/gtest/gtest.h"
class OmniboxFieldTrialTest : public testing::Test {
@@ -129,3 +130,53 @@ TEST_F(OmniboxFieldTrialTest, ZeroSuggestFieldTrial) {
EXPECT_TRUE(OmniboxFieldTrial::InZeroSuggestFieldTrial());
}
}
+
+TEST_F(OmniboxFieldTrialTest,
+ GetConsequencesOfRuleInPageClassificationContext) {
+ // Must be the same as kBundledExperimentFieldTrialName
+ // defined in omnibox_field_trial.cc.
+ const std::string kTrialName = "OmniboxBundledExperimentV1";
+ {
+ std::map<std::string, std::string> params;
+ params["1:rule1"] = "1-rule1-value";
+ params["3:rule1"] = "3-rule1-value";
+ params["*:rule1"] = "*-rule1-value";
+ params["*:rule2"] = "*-rule2-value";
+ params["4:rule3"] = "4-rule3-value";
+ params["unrecognized"] = "unrecognized-value";
+ ASSERT_TRUE(chrome_variations::AssociateVariationParams(
+ kTrialName, "A", params));
+ }
+
+ base::FieldTrialList::CreateFieldTrial(kTrialName, "A");
+ EXPECT_EQ("1-rule1-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::NEW_TAB_PAGE, "rule1")); // exact match
+ EXPECT_EQ("*-rule1-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::BLANK, "rule1")); // fallback to global
+ EXPECT_EQ("3-rule1-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::HOMEPAGE, "rule1")); // exact match
+ EXPECT_EQ("*-rule1-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::OTHER, "rule1")); // fallback to global
+ EXPECT_EQ("*-rule2-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::HOMEPAGE, "rule2")); // fallback to global
+ EXPECT_EQ("*-rule2-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::OTHER, "rule2")); // fallback to global
+ EXPECT_EQ("",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::BLANK, "rule3")); // no global
+ EXPECT_EQ("",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::HOMEPAGE, "rule3")); // no global
+ EXPECT_EQ("4-rule3-value",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::OTHER, "rule3")); // exact match
+ EXPECT_EQ("",
+ OmniboxFieldTrial::GetConsequencesOfRuleInPageClassificationContext(
+ AutocompleteInput::OTHER, "rule4")); // no rule at all
+}

Powered by Google App Engine
This is Rietveld 408576698