OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/feature_list.h" | 5 #include "base/feature_list.h" |
6 | 6 |
7 #include "base/format_macros.h" | 7 #include "base/format_macros.h" |
8 #include "base/metrics/field_trial.h" | 8 #include "base/metrics/field_trial.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
326 feature_list->RegisterFieldTrialOverride(kFeatureOffByDefaultName, | 326 feature_list->RegisterFieldTrialOverride(kFeatureOffByDefaultName, |
327 FeatureList::OVERRIDE_ENABLE_FEATURE, | 327 FeatureList::OVERRIDE_ENABLE_FEATURE, |
328 trial); | 328 trial); |
329 | 329 |
330 RegisterFeatureListInstance(feature_list.Pass()); | 330 RegisterFeatureListInstance(feature_list.Pass()); |
331 | 331 |
332 std::string enable_features; | 332 std::string enable_features; |
333 std::string disable_features; | 333 std::string disable_features; |
334 FeatureList::GetInstance()->GetFeatureOverrides(&enable_features, | 334 FeatureList::GetInstance()->GetFeatureOverrides(&enable_features, |
335 &disable_features); | 335 &disable_features); |
336 EXPECT_EQ("A,OffByDefault,X", SortFeatureListString(enable_features)); | 336 EXPECT_EQ("A,OffByDefault<Trial,X", SortFeatureListString(enable_features)); |
337 EXPECT_EQ("D", SortFeatureListString(disable_features)); | 337 EXPECT_EQ("D", SortFeatureListString(disable_features)); |
338 } | 338 } |
339 | 339 |
| 340 TEST_F(FeatureListTest, InitializeFromCommandLine_WithFieldTrials) { |
| 341 ClearFeatureListInstance(); |
| 342 FieldTrialList field_trial_list(nullptr); |
| 343 FieldTrialList::CreateFieldTrial("Trial", "Group"); |
| 344 scoped_ptr<FeatureList> feature_list(new FeatureList); |
| 345 feature_list->InitializeFromCommandLine("A,OffByDefault<Trial,X", "D"); |
| 346 RegisterFeatureListInstance(feature_list.Pass()); |
| 347 |
| 348 EXPECT_FALSE(FieldTrialList::IsTrialActive("Trial")); |
| 349 EXPECT_TRUE(FeatureList::IsEnabled(kFeatureOffByDefault)); |
| 350 EXPECT_TRUE(FieldTrialList::IsTrialActive("Trial")); |
| 351 } |
| 352 |
340 } // namespace base | 353 } // namespace base |
OLD | NEW |