| Index: chrome/common/variations/variations_util_unittest.cc
|
| diff --git a/chrome/common/variations/variations_util_unittest.cc b/chrome/common/variations/variations_util_unittest.cc
|
| deleted file mode 100644
|
| index 6c029b7fe0201f45f35d7a512210eb0ce0809cd4..0000000000000000000000000000000000000000
|
| --- a/chrome/common/variations/variations_util_unittest.cc
|
| +++ /dev/null
|
| @@ -1,177 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/common/variations/variations_util.h"
|
| -
|
| -#include <memory>
|
| -#include <utility>
|
| -
|
| -#include "base/command_line.h"
|
| -#include "base/feature_list.h"
|
| -#include "base/macros.h"
|
| -#include "base/metrics/field_trial.h"
|
| -#include "chrome/common/variations/fieldtrial_testing_config.h"
|
| -#include "components/variations/variations_associated_data.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace chrome_variations {
|
| -
|
| -class VariationsUtilTest : public ::testing::Test {
|
| - public:
|
| - VariationsUtilTest() : field_trial_list_(nullptr) {}
|
| -
|
| - ~VariationsUtilTest() override {
|
| - // Ensure that the maps are cleared between tests, since they are stored as
|
| - // process singletons.
|
| - variations::testing::ClearAllVariationIDs();
|
| - variations::testing::ClearAllVariationParams();
|
| - }
|
| -
|
| - private:
|
| - base::FieldTrialList field_trial_list_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(VariationsUtilTest);
|
| -};
|
| -
|
| -TEST_F(VariationsUtilTest, AssociateParamsFromString) {
|
| - const std::string kTrialName = "AssociateVariationParams";
|
| - const std::string kVariationsString =
|
| - "AssociateVariationParams.A:a/10/b/test,AssociateVariationParams.B:a/%2F";
|
| - ASSERT_TRUE(AssociateParamsFromString(kVariationsString));
|
| -
|
| - base::FieldTrialList::CreateFieldTrial(kTrialName, "B");
|
| - EXPECT_EQ("/", variations::GetVariationParamValue(kTrialName, "a"));
|
| - EXPECT_EQ(std::string(), variations::GetVariationParamValue(kTrialName, "b"));
|
| - EXPECT_EQ(std::string(), variations::GetVariationParamValue(kTrialName, "x"));
|
| -
|
| - std::map<std::string, std::string> params;
|
| - EXPECT_TRUE(variations::GetVariationParams(kTrialName, ¶ms));
|
| - EXPECT_EQ(1U, params.size());
|
| - EXPECT_EQ("/", params["a"]);
|
| -}
|
| -
|
| -TEST_F(VariationsUtilTest, AssociateParamsFromStringWithSameTrial) {
|
| - const std::string kTrialName = "AssociateVariationParams";
|
| - const std::string kVariationsString =
|
| - "AssociateVariationParams.A:a/10/b/test,AssociateVariationParams.A:a/x";
|
| - ASSERT_FALSE(AssociateParamsFromString(kVariationsString));
|
| -}
|
| -
|
| -TEST_F(VariationsUtilTest, AssociateParamsFromFieldTrialConfig) {
|
| - const FieldTrialTestingExperimentParams array_kFieldTrialConfig_params_0[] =
|
| - {{"x", "1"}, {"y", "2"}};
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_0[] = {
|
| - {"TestGroup1", array_kFieldTrialConfig_params_0, 2, nullptr, 0,
|
| - nullptr, 0, nullptr},
|
| - };
|
| - const FieldTrialTestingExperimentParams array_kFieldTrialConfig_params_1[] =
|
| - {{"x", "3"}, {"y", "4"}};
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_1[] = {
|
| - {"TestGroup2", array_kFieldTrialConfig_params_0, 2, nullptr, 0,
|
| - nullptr, 0, nullptr},
|
| - {"TestGroup2-2", array_kFieldTrialConfig_params_1, 2, nullptr, 0,
|
| - nullptr, 0, nullptr},
|
| - };
|
| - const FieldTrialTestingStudy array_kFieldTrialConfig_studies[] = {
|
| - {"TestTrial1", array_kFieldTrialConfig_experiments_0, 1},
|
| - {"TestTrial2", array_kFieldTrialConfig_experiments_1, 2},
|
| - };
|
| - const FieldTrialTestingConfig kConfig = {
|
| - array_kFieldTrialConfig_studies, 2
|
| - };
|
| -
|
| - base::FeatureList feature_list;
|
| - AssociateParamsFromFieldTrialConfig(kConfig, &feature_list);
|
| -
|
| - EXPECT_EQ("1", variations::GetVariationParamValue("TestTrial1", "x"));
|
| - EXPECT_EQ("2", variations::GetVariationParamValue("TestTrial1", "y"));
|
| -
|
| - std::map<std::string, std::string> params;
|
| - EXPECT_TRUE(variations::GetVariationParams("TestTrial1", ¶ms));
|
| - EXPECT_EQ(2U, params.size());
|
| - EXPECT_EQ("1", params["x"]);
|
| - EXPECT_EQ("2", params["y"]);
|
| -
|
| - EXPECT_EQ("TestGroup1", base::FieldTrialList::FindFullName("TestTrial1"));
|
| - EXPECT_EQ("TestGroup2", base::FieldTrialList::FindFullName("TestTrial2"));
|
| -}
|
| -
|
| -TEST_F(VariationsUtilTest, AssociateFeaturesFromFieldTrialConfig) {
|
| - const base::Feature kFeatureA{"A", base::FEATURE_DISABLED_BY_DEFAULT};
|
| - const base::Feature kFeatureB{"B", base::FEATURE_ENABLED_BY_DEFAULT};
|
| - const base::Feature kFeatureC{"C", base::FEATURE_DISABLED_BY_DEFAULT};
|
| - const base::Feature kFeatureD{"D", base::FEATURE_ENABLED_BY_DEFAULT};
|
| -
|
| - const char* enable_features[] = {"A", "B"};
|
| - const char* disable_features[] = {"C", "D"};
|
| -
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_0[] = {
|
| - {"TestGroup1", nullptr, 0, enable_features, 2, nullptr, 0, nullptr},
|
| - };
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_1[] = {
|
| - {"TestGroup2", nullptr, 0, nullptr, 0, disable_features, 2, nullptr},
|
| - {"TestGroup2-2", nullptr, 0, nullptr, 0, nullptr, 0, nullptr},
|
| - };
|
| -
|
| - const FieldTrialTestingStudy array_kFieldTrialConfig_studies[] = {
|
| - {"TestTrial1", array_kFieldTrialConfig_experiments_0, 1},
|
| - {"TestTrial2", array_kFieldTrialConfig_experiments_1, 2},
|
| - };
|
| -
|
| - const FieldTrialTestingConfig kConfig = {
|
| - array_kFieldTrialConfig_studies, 2
|
| - };
|
| -
|
| - base::FeatureList::ClearInstanceForTesting();
|
| - std::unique_ptr<base::FeatureList> feature_list(new base::FeatureList);
|
| - AssociateParamsFromFieldTrialConfig(kConfig, feature_list.get());
|
| - base::FeatureList::SetInstance(std::move(feature_list));
|
| -
|
| - // Check the resulting feature and field trial states. Trials should not be
|
| - // active until their associated features are queried.
|
| - EXPECT_FALSE(base::FieldTrialList::IsTrialActive("TestTrial1"));
|
| - EXPECT_TRUE(base::FeatureList::IsEnabled(kFeatureA));
|
| - EXPECT_TRUE(base::FeatureList::IsEnabled(kFeatureB));
|
| - EXPECT_TRUE(base::FieldTrialList::IsTrialActive("TestTrial1"));
|
| -
|
| - EXPECT_FALSE(base::FieldTrialList::IsTrialActive("TestTrial2"));
|
| - EXPECT_FALSE(base::FeatureList::IsEnabled(kFeatureC));
|
| - EXPECT_FALSE(base::FeatureList::IsEnabled(kFeatureD));
|
| - EXPECT_TRUE(base::FieldTrialList::IsTrialActive("TestTrial2"));
|
| -}
|
| -
|
| -TEST_F(VariationsUtilTest, AssociateForcingFlagsFromFieldTrialConfig) {
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_0[] = {
|
| - {"TestGroup1", nullptr, 0, nullptr, 0, nullptr, 0, nullptr}
|
| - };
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_1[] = {
|
| - {"TestGroup2", nullptr, 0, nullptr, 0, nullptr, 0, nullptr},
|
| - {"ForcedGroup2", nullptr, 0, nullptr, 0, nullptr, 0, "flag-2"},
|
| - };
|
| - const FieldTrialTestingExperiment array_kFieldTrialConfig_experiments_2[] = {
|
| - {"TestGroup3", nullptr, 0, nullptr, 0, nullptr, 0, nullptr},
|
| - {"ForcedGroup3", nullptr, 0, nullptr, 0, nullptr, 0, "flag-3"},
|
| - {"ForcedGroup3-2", nullptr, 0, nullptr, 0, nullptr, 0, "flag-3-2"},
|
| - };
|
| - const FieldTrialTestingStudy array_kFieldTrialConfig_studies[] = {
|
| - {"TestTrial1", array_kFieldTrialConfig_experiments_0, 1},
|
| - {"TestTrial2", array_kFieldTrialConfig_experiments_1, 2},
|
| - {"TestTrial3", array_kFieldTrialConfig_experiments_2, 3},
|
| - };
|
| - const FieldTrialTestingConfig kConfig = {
|
| - array_kFieldTrialConfig_studies, 3
|
| - };
|
| -
|
| - base::CommandLine::ForCurrentProcess()->AppendSwitch("flag-2");
|
| - base::CommandLine::ForCurrentProcess()->AppendSwitch("flag-3");
|
| -
|
| - base::FeatureList feature_list;
|
| - AssociateParamsFromFieldTrialConfig(kConfig, &feature_list);
|
| -
|
| - EXPECT_EQ("TestGroup1", base::FieldTrialList::FindFullName("TestTrial1"));
|
| - EXPECT_EQ("ForcedGroup2", base::FieldTrialList::FindFullName("TestTrial2"));
|
| - EXPECT_EQ("ForcedGroup3", base::FieldTrialList::FindFullName("TestTrial3"));
|
| -}
|
| -
|
| -} // namespace chrome_variations
|
|
|