Index: components/variations/variations_associated_data.cc |
diff --git a/components/variations/variations_associated_data.cc b/components/variations/variations_associated_data.cc |
index 9aa51d379f3d884a094d208d621e0d4eaacbe7f8..d7dda4b97d188a4c208e11ab5f35ba86551cdb94 100644 |
--- a/components/variations/variations_associated_data.cc |
+++ b/components/variations/variations_associated_data.cc |
@@ -16,6 +16,8 @@ namespace variations { |
namespace { |
+const char kGroupTesting[] = "Testing"; |
+ |
// The internal singleton accessor for the map, used to keep it thread-safe. |
class GroupMapAccessor { |
public: |
@@ -252,6 +254,26 @@ std::string GetVariationParamValueByFeature(const base::Feature& feature, |
// They simply wrap existing functions in this file. |
namespace testing { |
+VariationParamsManager::VariationParamsManager( |
+ const std::string& trial_name, |
+ const std::map<std::string, std::string>& params) { |
+ SetVariationParams(trial_name, params); |
+} |
+ |
+VariationParamsManager::~VariationParamsManager() { |
+ ClearAllVariationIDs(); |
+ ClearAllVariationParams(); |
+ field_trial_list_.reset(); |
+} |
+ |
+void VariationParamsManager::SetVariationParams( |
+ const std::string& trial_name, |
+ const std::map<std::string, std::string>& params) { |
+ field_trial_list_.reset(new base::FieldTrialList(nullptr)); |
+ variations::AssociateVariationParams(trial_name, kGroupTesting, params); |
+ base::FieldTrialList::CreateFieldTrial(trial_name, kGroupTesting); |
+} |
+ |
void ClearAllVariationIDs() { |
GroupMapAccessor::GetInstance()->ClearAllMapsForTesting(); |
} |