| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "components/variations/child_process_field_trial_syncer.h" | 5 #include "components/variations/child_process_field_trial_syncer.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 47 std::pair<std::string, std::string> MakeStringPair(const std::string& a, | 47 std::pair<std::string, std::string> MakeStringPair(const std::string& a, |
| 48 const std::string& b) { | 48 const std::string& b) { |
| 49 return std::make_pair(a, b); | 49 return std::make_pair(a, b); |
| 50 } | 50 } |
| 51 | 51 |
| 52 } // namespace | 52 } // namespace |
| 53 | 53 |
| 54 TEST(ChildProcessFieldTrialSyncerTest, FieldTrialState) { | 54 TEST(ChildProcessFieldTrialSyncerTest, FieldTrialState) { |
| 55 base::MessageLoop message_loop; | 55 base::MessageLoop message_loop; |
| 56 base::FieldTrialList field_trial_list(nullptr); | 56 base::FieldTrialList field_trial_list(nullptr); |
| 57 // We don't use the descriptor here anyways so it's ok to pass -1. |
| 57 base::FieldTrialList::CreateTrialsFromCommandLine( | 58 base::FieldTrialList::CreateTrialsFromCommandLine( |
| 58 *base::CommandLine::ForCurrentProcess(), "field_trial_handle_switch"); | 59 *base::CommandLine::ForCurrentProcess(), "field_trial_handle_switch", -1); |
| 59 | 60 |
| 60 base::FieldTrial* trial1 = base::FieldTrialList::CreateFieldTrial("A", "G1"); | 61 base::FieldTrial* trial1 = base::FieldTrialList::CreateFieldTrial("A", "G1"); |
| 61 base::FieldTrial* trial2 = base::FieldTrialList::CreateFieldTrial("B", "G2"); | 62 base::FieldTrial* trial2 = base::FieldTrialList::CreateFieldTrial("B", "G2"); |
| 62 base::FieldTrial* trial3 = base::FieldTrialList::CreateFieldTrial("C", "G3"); | 63 base::FieldTrial* trial3 = base::FieldTrialList::CreateFieldTrial("C", "G3"); |
| 63 // Activate trial3 before command line is produced. | 64 // Activate trial3 before command line is produced. |
| 64 trial1->group(); | 65 trial1->group(); |
| 65 | 66 |
| 66 std::string states_string; | 67 std::string states_string; |
| 67 base::FieldTrialList::AllStatesToString(&states_string); | 68 base::FieldTrialList::AllStatesToString(&states_string); |
| 68 | 69 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 88 trial3->group(); | 89 trial3->group(); |
| 89 // Notifications from field trial activation actually happen via posted tasks, | 90 // Notifications from field trial activation actually happen via posted tasks, |
| 90 // so invoke the run loop. | 91 // so invoke the run loop. |
| 91 base::RunLoop().RunUntilIdle(); | 92 base::RunLoop().RunUntilIdle(); |
| 92 | 93 |
| 93 ASSERT_EQ(2U, observer.observed_entries_count()); | 94 ASSERT_EQ(2U, observer.observed_entries_count()); |
| 94 EXPECT_EQ(MakeStringPair("C", "G3"), observer.get_observed_entry(1)); | 95 EXPECT_EQ(MakeStringPair("C", "G3"), observer.get_observed_entry(1)); |
| 95 } | 96 } |
| 96 | 97 |
| 97 } // namespace variations | 98 } // namespace variations |
| OLD | NEW |