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

Unified Diff: base/metrics/field_trial_unittest.cc

Issue 10151017: Remove the hash fields from FieldTrials. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: header order Created 8 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 | « base/metrics/field_trial.cc ('k') | chrome/browser/metrics/metrics_log.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/metrics/field_trial_unittest.cc
diff --git a/base/metrics/field_trial_unittest.cc b/base/metrics/field_trial_unittest.cc
index 9c50fc54657e0ac9f75c88f94cba0c1241ebbfb7..51e9aaa6794eef5856621eb1d74bbcee150961e0 100644
--- a/base/metrics/field_trial_unittest.cc
+++ b/base/metrics/field_trial_unittest.cc
@@ -227,51 +227,26 @@ TEST_F(FieldTrialTest, DisableProbability) {
EXPECT_EQ(default_group_name, trial->group_name());
}
-TEST_F(FieldTrialTest, HashName) {
- // Make sure hashing is stable on all platforms.
- struct {
- const char* name;
- uint32 hash_value;
- } known_hashes[] = {
- {"a", 937752454u},
- {"1", 723085877u},
- {"Trial Name", 2713117220u},
- {"Group Name", 3201815843u},
- {"My Favorite Experiment", 3722155194u},
- {"My Awesome Group Name", 4109503236u},
- {"abcdefghijklmonpqrstuvwxyz", 787728696u},
- {"0123456789ABCDEF", 348858318U}
- };
- for (size_t i = 0; i < ARRAYSIZE_UNSAFE(known_hashes); ++i) {
- EXPECT_EQ(known_hashes[i].hash_value,
- FieldTrial::HashName(known_hashes[i].name));
- }
-}
-
-TEST_F(FieldTrialTest, NameGroupIds) {
+TEST_F(FieldTrialTest, SelectedGroups) {
std::string no_group("No Group");
- uint32 no_group_id = FieldTrial::HashName(no_group);
scoped_refptr<FieldTrial> trial(FieldTrialList::FactoryGetFieldTrial(
no_group, 10, "Default", next_year_, 12, 31, NULL));
// There is no winner yet, so no NameGroupId should be returned.
- FieldTrial::NameGroupId name_group_id;
- EXPECT_FALSE(trial->GetNameGroupId(&name_group_id));
+ FieldTrial::SelectedGroup selected_group;
+ EXPECT_FALSE(trial->GetSelectedGroup(&selected_group));
// Create a single winning group.
std::string one_winner("One Winner");
- uint32 one_winner_id = FieldTrial::HashName(one_winner);
trial = FieldTrialList::FactoryGetFieldTrial(
one_winner, 10, "Default", next_year_, 12, 31, NULL);
std::string winner("Winner");
- uint32 winner_group_id = FieldTrial::HashName(winner);
trial->AppendGroup(winner, 10);
- EXPECT_TRUE(trial->GetNameGroupId(&name_group_id));
- EXPECT_EQ(one_winner_id, name_group_id.name);
- EXPECT_EQ(winner_group_id, name_group_id.group);
+ EXPECT_TRUE(trial->GetSelectedGroup(&selected_group));
+ EXPECT_EQ(one_winner, selected_group.trial);
+ EXPECT_EQ(winner, selected_group.group);
std::string multi_group("MultiGroup");
- uint32 multi_group_id = FieldTrial::HashName(multi_group);
scoped_refptr<FieldTrial> multi_group_trial =
FieldTrialList::FactoryGetFieldTrial(multi_group, 9, "Default",
next_year_, 12, 31, NULL);
@@ -279,23 +254,21 @@ TEST_F(FieldTrialTest, NameGroupIds) {
multi_group_trial->AppendGroup("Me", 3);
multi_group_trial->AppendGroup("You", 3);
multi_group_trial->AppendGroup("Them", 3);
- EXPECT_TRUE(multi_group_trial->GetNameGroupId(&name_group_id));
- EXPECT_EQ(multi_group_id, name_group_id.name);
- uint32 multi_group_winner_id =
- FieldTrial::HashName(multi_group_trial->group_name());
- EXPECT_EQ(multi_group_winner_id, name_group_id.group);
+ EXPECT_TRUE(multi_group_trial->GetSelectedGroup(&selected_group));
+ EXPECT_EQ(multi_group, selected_group.trial);
+ EXPECT_EQ(multi_group_trial->group_name(), selected_group.group);
// Now check if the list is built properly...
- std::vector<FieldTrial::NameGroupId> name_group_ids;
- FieldTrialList::GetFieldTrialNameGroupIds(&name_group_ids);
- EXPECT_EQ(2U, name_group_ids.size());
- for (size_t i = 0; i < name_group_ids.size(); ++i) {
+ std::vector<FieldTrial::SelectedGroup> selected_groups;
+ FieldTrialList::GetFieldTrialSelectedGroups(&selected_groups);
+ EXPECT_EQ(2U, selected_groups.size());
+ for (size_t i = 0; i < selected_groups.size(); ++i) {
// Order is not guaranteed, so check all values.
- EXPECT_NE(no_group_id, name_group_ids[i].name);
- EXPECT_TRUE(one_winner_id != name_group_ids[i].name ||
- winner_group_id == name_group_ids[i].group);
- EXPECT_TRUE(multi_group_id != name_group_ids[i].name ||
- multi_group_winner_id == name_group_ids[i].group);
+ EXPECT_NE(no_group, selected_groups[i].trial);
+ EXPECT_TRUE(one_winner != selected_groups[i].trial ||
+ winner == selected_groups[i].group);
+ EXPECT_TRUE(multi_group != selected_groups[i].trial ||
+ multi_group_trial->group_name() == selected_groups[i].group);
}
}
« no previous file with comments | « base/metrics/field_trial.cc ('k') | chrome/browser/metrics/metrics_log.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698