Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Side by Side Diff: chrome/browser/search/search_unittest.cc

Issue 393173002: Moves some functions in search.h to components. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: android fix 3 Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/command_line.h" 5 #include "base/command_line.h"
6 #include "base/metrics/field_trial.h" 6 #include "base/metrics/field_trial.h"
7 #include "base/metrics/histogram_base.h" 7 #include "base/metrics/histogram_base.h"
8 #include "base/metrics/histogram_samples.h" 8 #include "base/metrics/histogram_samples.h"
9 #include "base/metrics/statistics_recorder.h"
10 #include "base/prefs/pref_service.h" 9 #include "base/prefs/pref_service.h"
11 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
12 #include "chrome/browser/search/instant_service.h" 11 #include "chrome/browser/search/instant_service.h"
13 #include "chrome/browser/search/instant_service_factory.h" 12 #include "chrome/browser/search/instant_service_factory.h"
14 #include "chrome/browser/search/search.h" 13 #include "chrome/browser/search/search.h"
15 #include "chrome/browser/search_engines/template_url_service_factory.h" 14 #include "chrome/browser/search_engines/template_url_service_factory.h"
16 #include "chrome/browser/search_engines/ui_thread_search_terms_data.h" 15 #include "chrome/browser/search_engines/ui_thread_search_terms_data.h"
17 #include "chrome/browser/supervised_user/supervised_user_service.h" 16 #include "chrome/browser/supervised_user/supervised_user_service.h"
18 #include "chrome/browser/supervised_user/supervised_user_service_factory.h" 17 #include "chrome/browser/supervised_user/supervised_user_service_factory.h"
19 #include "chrome/browser/supervised_user/supervised_user_url_filter.h" 18 #include "chrome/browser/supervised_user/supervised_user_url_filter.h"
20 #include "chrome/browser/ui/tabs/tab_strip_model.h" 19 #include "chrome/browser/ui/tabs/tab_strip_model.h"
21 #include "chrome/common/chrome_switches.h" 20 #include "chrome/common/chrome_switches.h"
22 #include "chrome/common/pref_names.h" 21 #include "chrome/common/pref_names.h"
23 #include "chrome/common/url_constants.h" 22 #include "chrome/common/url_constants.h"
24 #include "chrome/test/base/browser_with_test_window_test.h" 23 #include "chrome/test/base/browser_with_test_window_test.h"
25 #include "chrome/test/base/ui_test_utils.h" 24 #include "chrome/test/base/ui_test_utils.h"
26 #include "components/google/core/browser/google_switches.h" 25 #include "components/google/core/browser/google_switches.h"
26 #include "components/search/search.h"
27 #include "components/search_engines/search_engines_switches.h" 27 #include "components/search_engines/search_engines_switches.h"
28 #include "components/search_engines/template_url_service.h" 28 #include "components/search_engines/template_url_service.h"
29 #include "components/variations/entropy_provider.h" 29 #include "components/variations/entropy_provider.h"
30 #include "content/public/browser/render_process_host.h" 30 #include "content/public/browser/render_process_host.h"
31 #include "content/public/browser/render_view_host.h" 31 #include "content/public/browser/render_view_host.h"
32 #include "content/public/browser/site_instance.h" 32 #include "content/public/browser/site_instance.h"
33 #include "content/public/browser/web_contents.h" 33 #include "content/public/browser/web_contents.h"
34 #include "content/public/common/renderer_preferences.h" 34 #include "content/public/common/renderer_preferences.h"
35 #include "url/gurl.h" 35 #include "url/gurl.h"
36 36
37 namespace chrome { 37 namespace chrome {
38 38
39 class EmbeddedSearchFieldTrialTest : public testing::Test {
40 protected:
41 virtual void SetUp() {
42 field_trial_list_.reset(new base::FieldTrialList(
43 new metrics::SHA1EntropyProvider("42")));
44 base::StatisticsRecorder::Initialize();
45 }
46
47 private:
48 scoped_ptr<base::FieldTrialList> field_trial_list_;
49 };
50
51 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoEmptyAndValid) {
52 FieldTrialFlags flags;
53
54 EXPECT_TRUE(GetFieldTrialInfo(&flags));
55 EXPECT_EQ(0ul, flags.size());
56
57 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
58 "Group77"));
59 EXPECT_TRUE(GetFieldTrialInfo(&flags));
60 EXPECT_EQ(0ul, flags.size());
61 }
62
63 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoInvalidNumber) {
64 FieldTrialFlags flags;
65
66 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
67 "Group77.2"));
68 EXPECT_TRUE(GetFieldTrialInfo(&flags));
69 EXPECT_EQ(0ul, flags.size());
70 }
71
72 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoInvalidName) {
73 FieldTrialFlags flags;
74
75 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
76 "Invalid77"));
77 EXPECT_TRUE(GetFieldTrialInfo(&flags));
78 EXPECT_EQ(0ul, flags.size());
79 }
80
81 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoValidGroup) {
82 FieldTrialFlags flags;
83
84 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
85 "Group77"));
86 EXPECT_TRUE(GetFieldTrialInfo(&flags));
87 EXPECT_EQ(0ul, flags.size());
88 }
89
90 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoValidFlag) {
91 FieldTrialFlags flags;
92
93 EXPECT_EQ(9999ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
94 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
95 "Group77 foo:6"));
96 EXPECT_TRUE(GetFieldTrialInfo(&flags));
97 EXPECT_EQ(1ul, flags.size());
98 EXPECT_EQ(6ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
99 }
100
101 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoNewName) {
102 FieldTrialFlags flags;
103
104 EXPECT_EQ(9999ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
105 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
106 "Group77 foo:6"));
107 EXPECT_TRUE(GetFieldTrialInfo(&flags));
108 EXPECT_EQ(1ul, flags.size());
109 EXPECT_EQ(6ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
110 }
111
112 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoNewNameOverridesOld) {
113 FieldTrialFlags flags;
114
115 EXPECT_EQ(9999ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
116 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("EmbeddedSearch",
117 "Group77 foo:6"));
118 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial("InstantExtended",
119 "Group78 foo:5"));
120 EXPECT_TRUE(GetFieldTrialInfo(&flags));
121 EXPECT_EQ(1ul, flags.size());
122 EXPECT_EQ(6ul, GetUInt64ValueForFlagWithDefault("foo", 9999, flags));
123 }
124
125 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoLotsOfFlags) {
126 FieldTrialFlags flags;
127
128 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
129 "EmbeddedSearch", "Group77 bar:1 baz:7 cat:dogs"));
130 EXPECT_TRUE(GetFieldTrialInfo(&flags));
131 EXPECT_EQ(3ul, flags.size());
132 EXPECT_EQ(true, GetBoolValueForFlagWithDefault("bar", false, flags));
133 EXPECT_EQ(7ul, GetUInt64ValueForFlagWithDefault("baz", 0, flags));
134 EXPECT_EQ("dogs",
135 GetStringValueForFlagWithDefault("cat", std::string(), flags));
136 EXPECT_EQ("default",
137 GetStringValueForFlagWithDefault("moose", "default", flags));
138 }
139
140 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoDisabled) {
141 FieldTrialFlags flags;
142
143 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
144 "EmbeddedSearch", "Group77 bar:1 baz:7 cat:dogs DISABLED"));
145 EXPECT_FALSE(GetFieldTrialInfo(&flags));
146 EXPECT_EQ(0ul, flags.size());
147 }
148
149 TEST_F(EmbeddedSearchFieldTrialTest, GetFieldTrialInfoControlFlags) {
150 FieldTrialFlags flags;
151
152 ASSERT_TRUE(base::FieldTrialList::CreateFieldTrial(
153 "EmbeddedSearch", "Control77 bar:1 baz:7 cat:dogs"));
154 EXPECT_TRUE(GetFieldTrialInfo(&flags));
155 EXPECT_EQ(3ul, flags.size());
156 }
157
158 class SearchTest : public BrowserWithTestWindowTest { 39 class SearchTest : public BrowserWithTestWindowTest {
159 protected: 40 protected:
160 virtual void SetUp() OVERRIDE { 41 virtual void SetUp() OVERRIDE {
161 BrowserWithTestWindowTest::SetUp(); 42 BrowserWithTestWindowTest::SetUp();
162 field_trial_list_.reset(new base::FieldTrialList( 43 field_trial_list_.reset(new base::FieldTrialList(
163 new metrics::SHA1EntropyProvider("42"))); 44 new metrics::SHA1EntropyProvider("42")));
164 TemplateURLServiceFactory::GetInstance()->SetTestingFactoryAndUse( 45 TemplateURLServiceFactory::GetInstance()->SetTestingFactoryAndUse(
165 profile(), &TemplateURLServiceFactory::BuildInstanceFor); 46 profile(), &TemplateURLServiceFactory::BuildInstanceFor);
166 TemplateURLService* template_url_service = 47 TemplateURLService* template_url_service =
167 TemplateURLServiceFactory::GetForProfile(profile()); 48 TemplateURLServiceFactory::GetForProfile(profile());
(...skipping 974 matching lines...) Expand 10 before | Expand all | Expand 10 after
1142 } 1023 }
1143 1024
1144 TEST_F(OriginChipTest, CommandLineOnSrp) { 1025 TEST_F(OriginChipTest, CommandLineOnSrp) {
1145 CommandLine::ForCurrentProcess()->AppendSwitch( 1026 CommandLine::ForCurrentProcess()->AppendSwitch(
1146 switches::kEnableOriginChipOnSrp); 1027 switches::kEnableOriginChipOnSrp);
1147 EXPECT_TRUE(ShouldDisplayOriginChip()); 1028 EXPECT_TRUE(ShouldDisplayOriginChip());
1148 EXPECT_EQ(ORIGIN_CHIP_ON_SRP, GetOriginChipCondition()); 1029 EXPECT_EQ(ORIGIN_CHIP_ON_SRP, GetOriginChipCondition());
1149 } 1030 }
1150 1031
1151 } // namespace chrome 1032 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/search/search_android_unittest.cc ('k') | chrome/browser/search_engines/ui_thread_search_terms_data.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698