| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/search/search.h" | 5 #include "components/search/search.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
| 10 #include "base/metrics/field_trial.h" | 10 #include "base/metrics/field_trial.h" |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 "Group78 foo:5")); | 98 "Group78 foo:5")); |
| 99 EXPECT_TRUE(GetFieldTrialInfo(&flags)); | 99 EXPECT_TRUE(GetFieldTrialInfo(&flags)); |
| 100 EXPECT_EQ(1ul, flags.size()); | 100 EXPECT_EQ(1ul, flags.size()); |
| 101 EXPECT_EQ(6ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags)); | 101 EXPECT_EQ(6ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags)); |
| 102 } | 102 } |
| 103 | 103 |
| 104 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoLotsOfFlags) { | 104 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoLotsOfFlags) { |
| 105 FieldTrialFlags flags; | 105 FieldTrialFlags flags; |
| 106 | 106 |
| 107 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( | 107 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( |
| 108 "EmbeddedSearch", "Group77 bar:1 baz:7 cat:dogs")); | 108 "EmbeddedSearch", "Group77 baz:7 cat:dogs")); |
| 109 EXPECT_TRUE(GetFieldTrialInfo(&flags)); | 109 EXPECT_TRUE(GetFieldTrialInfo(&flags)); |
| 110 EXPECT_EQ(3ul, flags.size()); | 110 EXPECT_EQ(2ul, flags.size()); |
| 111 EXPECT_EQ(true, GetBoolValueForFlagWithDefault("bar", false, flags)); | |
| 112 EXPECT_EQ(7ul, GetUInt64ValueForFlagWithDefault("baz", 0, flags)); | 111 EXPECT_EQ(7ul, GetUInt64ValueForFlagWithDefault("baz", 0, flags)); |
| 113 EXPECT_EQ("dogs", | |
| 114 GetStringValueForFlagWithDefault("cat", std::string(), flags)); | |
| 115 EXPECT_EQ("default", | |
| 116 GetStringValueForFlagWithDefault("moose", "default", flags)); | |
| 117 } | 112 } |
| 118 | 113 |
| 119 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoDisabled) { | 114 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoDisabled) { |
| 120 FieldTrialFlags flags; | 115 FieldTrialFlags flags; |
| 121 | 116 |
| 122 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( | 117 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( |
| 123 "EmbeddedSearch", "Group77 bar:1 baz:7 cat:dogs DISABLED")); | 118 "EmbeddedSearch", "Group77 bar:1 baz:7 cat:dogs DISABLED")); |
| 124 EXPECT_FALSE(GetFieldTrialInfo(&flags)); | 119 EXPECT_FALSE(GetFieldTrialInfo(&flags)); |
| 125 EXPECT_EQ(0ul, flags.size()); | 120 EXPECT_EQ(0ul, flags.size()); |
| 126 } | 121 } |
| 127 | 122 |
| 128 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoControlFlags) { | 123 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoControlFlags) { |
| 129 FieldTrialFlags flags; | 124 FieldTrialFlags flags; |
| 130 | 125 |
| 131 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( | 126 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( |
| 132 "EmbeddedSearch", "Control77 bar:1 baz:7 cat:dogs")); | 127 "EmbeddedSearch", "Control77 bar:1 baz:7 cat:dogs")); |
| 133 EXPECT_TRUE(GetFieldTrialInfo(&flags)); | 128 EXPECT_TRUE(GetFieldTrialInfo(&flags)); |
| 134 EXPECT_EQ(3ul, flags.size()); | 129 EXPECT_EQ(3ul, flags.size()); |
| 135 } | 130 } |
| 136 | 131 |
| 137 #if !defined(OS_IOS) && !defined(OS_ANDROID) | 132 #if !defined(OS_IOS) && !defined(OS_ANDROID) |
| 138 typedef EmbeddedSearchFieldTrialTest SearchTest; | 133 typedef EmbeddedSearchFieldTrialTest SearchTest; |
| 139 | 134 |
| 140 TEST_F(SearchTest, ShouldPrefetchSearchResults_InstantExtendedAPIEnabled) { | 135 TEST_F(SearchTest, ShouldPrefetchSearchResults_InstantExtendedAPIEnabled) { |
| 141 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", | 136 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", |
| 142 "Group1 espv:2")); | 137 "Group1 espv:2")); |
| 143 EXPECT_EQ(2ul, EmbeddedSearchPageVersion()); | 138 EXPECT_EQ(2ul, EmbeddedSearchPageVersion()); |
| 144 EXPECT_TRUE(ShouldPrefetchSearchResults()); | 139 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); |
| 145 } | |
| 146 | |
| 147 TEST_F(SearchTest, ShouldPrefetchSearchResults_Default) { | |
| 148 EXPECT_TRUE(ShouldPrefetchSearchResults()); | |
| 149 } | |
| 150 | |
| 151 TEST_F(SearchTest, ShouldReuseInstantSearchBasePage_Default) { | |
| 152 EXPECT_TRUE(ShouldReuseInstantSearchBasePage()); | |
| 153 } | 140 } |
| 154 | 141 |
| 155 TEST_F(SearchTest, ForceInstantResultsParam) { | 142 TEST_F(SearchTest, ForceInstantResultsParam) { |
| 156 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", | 143 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", |
| 157 "Group1 espv:2")); | 144 "Group1 espv:2")); |
| 158 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); | 145 EXPECT_TRUE(IsInstantExtendedAPIEnabled()); |
| 159 EXPECT_EQ("ion=1&", ForceInstantResultsParam(true)); | 146 EXPECT_EQ("ion=1&", ForceInstantResultsParam(true)); |
| 160 EXPECT_EQ(std::string(), ForceInstantResultsParam(false)); | 147 EXPECT_EQ(std::string(), ForceInstantResultsParam(false)); |
| 161 } | 148 } |
| 162 | 149 |
| 163 typedef EmbeddedSearchFieldTrialTest InstantExtendedEnabledParamTest; | 150 typedef EmbeddedSearchFieldTrialTest InstantExtendedEnabledParamTest; |
| 164 | 151 |
| 165 TEST_F(InstantExtendedEnabledParamTest, QueryExtractionDisabled) { | 152 TEST_F(InstantExtendedEnabledParamTest, QueryExtractionDisabled) { |
| 166 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", | 153 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch", |
| 167 "Group1 espv:12")); | 154 "Group1 espv:12")); |
| 168 EXPECT_EQ("espv=12&", InstantExtendedEnabledParam()); | 155 EXPECT_EQ("espv=12&", InstantExtendedEnabledParam()); |
| 169 } | 156 } |
| 170 | 157 |
| 171 TEST_F(InstantExtendedEnabledParamTest, UseDefaultEmbeddedSearchPageVersion) { | 158 TEST_F(InstantExtendedEnabledParamTest, UseDefaultEmbeddedSearchPageVersion) { |
| 172 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( | 159 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial( |
| 173 "EmbeddedSearch", "Group1 espv:-1")); | 160 "EmbeddedSearch", "Group1 espv:-1")); |
| 174 EXPECT_EQ("espv=2&", InstantExtendedEnabledParam()); | 161 EXPECT_EQ("espv=2&", InstantExtendedEnabledParam()); |
| 175 } | 162 } |
| 176 | 163 |
| 177 #endif // !defined(OS_IOS) && !defined(OS_ANDROID) | 164 #endif // !defined(OS_IOS) && !defined(OS_ANDROID) |
| 178 | 165 |
| 179 } // namespace search | 166 } // namespace search |
| OLD | NEW |