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

Side by Side Diff: chrome/browser/search_engines/template_url_service_test_util.cc

Issue 2479113002: Make extensions DSE persistent in browser prefs (Closed)
Patch Set: Updated after review, round 6 Created 4 years 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/search_engines/template_url_service_test_util.h" 5 #include "chrome/browser/search_engines/template_url_service_test_util.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "base/threading/thread_task_runner_handle.h" 9 #include "base/threading/thread_task_runner_handle.h"
10 #include "chrome/browser/history/history_service_factory.h" 10 #include "chrome/browser/history/history_service_factory.h"
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 void TemplateURLServiceTestUtil::ClearModel() { 120 void TemplateURLServiceTestUtil::ClearModel() {
121 model_->Shutdown(); 121 model_->Shutdown();
122 model_.reset(); 122 model_.reset();
123 search_terms_data_ = NULL; 123 search_terms_data_ = NULL;
124 } 124 }
125 125
126 void TemplateURLServiceTestUtil::ResetModel(bool verify_load) { 126 void TemplateURLServiceTestUtil::ResetModel(bool verify_load) {
127 if (model_) 127 if (model_)
128 ClearModel(); 128 ClearModel();
129 search_terms_data_ = new TestingSearchTermsData("http://www.google.com/"); 129 search_terms_data_ = new TestingSearchTermsData("http://www.google.com/");
130
130 model_.reset(new TemplateURLService( 131 model_.reset(new TemplateURLService(
131 profile()->GetPrefs(), 132 profile()->GetPrefs(),
132 std::unique_ptr<SearchTermsData>(search_terms_data_), 133 std::unique_ptr<SearchTermsData>(search_terms_data_),
133 web_data_service_.get(), 134 web_data_service_.get(),
134 std::unique_ptr<TemplateURLServiceClient>( 135 std::unique_ptr<TemplateURLServiceClient>(
135 new TestingTemplateURLServiceClient( 136 new TestingTemplateURLServiceClient(
136 HistoryServiceFactory::GetForProfileIfExists( 137 HistoryServiceFactory::GetForProfileIfExists(
137 profile(), ServiceAccessType::EXPLICIT_ACCESS), 138 profile(), ServiceAccessType::EXPLICIT_ACCESS),
138 &search_term_)), 139 &search_term_)),
139 NULL, NULL, base::Closure())); 140 NULL, NULL, base::Closure()));
140 model()->AddObserver(this); 141 model()->AddObserver(this);
141 changed_count_ = 0; 142 changed_count_ = 0;
142 if (verify_load) 143 if (verify_load)
143 VerifyLoad(); 144 VerifyLoad();
144 } 145 }
145 146
146 base::string16 TemplateURLServiceTestUtil::GetAndClearSearchTerm() { 147 base::string16 TemplateURLServiceTestUtil::GetAndClearSearchTerm() {
147 base::string16 search_term; 148 base::string16 search_term;
148 search_term.swap(search_term_); 149 search_term.swap(search_term_);
149 return search_term; 150 return search_term;
150 } 151 }
151 152
152 void TemplateURLServiceTestUtil::SetGoogleBaseURL(const GURL& base_url) { 153 void TemplateURLServiceTestUtil::SetGoogleBaseURL(const GURL& base_url) {
153 DCHECK(base_url.is_valid()); 154 DCHECK(base_url.is_valid());
154 search_terms_data_->set_google_base_url(base_url.spec()); 155 search_terms_data_->set_google_base_url(base_url.spec());
155 model_->GoogleBaseURLChanged(); 156 model_->GoogleBaseURLChanged();
156 } 157 }
158
159 void TemplateURLServiceTestUtil::SetExtensionDefaultSearchInPrefs(
160 const std::string& ext_id,
161 const TemplateURLData& ext_data) {
162 std::unique_ptr<base::DictionaryValue> dict =
163 TemplateURLDataToDictionary(ext_data);
164 // Set extension overriden value in test pref service.
165 profile()->GetTestingPrefService()->SetExtensionPref(
166 DefaultSearchManager::kDefaultSearchProviderDataPrefName, dict.release());
167 }
168
169 void TemplateURLServiceTestUtil::RemoveExtensionDefaultSearchFromPrefs(
170 const std::string& ext_id) {
171 profile()->GetTestingPrefService()->RemoveExtensionPref(
172 DefaultSearchManager::kDefaultSearchProviderDataPrefName);
173 }
174
175 TemplateURL* TemplateURLServiceTestUtil::AddExtensionControlledTURL(
176 std::unique_ptr<TemplateURL> ext_dse,
177 std::unique_ptr<TemplateURL::AssociatedExtensionInfo> ext_info) {
178 TemplateURL::AssociatedExtensionInfo ext_info_copy = *ext_info;
179 TemplateURLData ext_data = ext_dse->data();
180 TemplateURL* result = model()->AddExtensionControlledTURL(
181 std::move(ext_dse), std::move(ext_info));
182 if (ext_info_copy.wants_to_be_default_engine) {
183 // Set extension overriden DSE value to prefs.
Peter Kasting 2016/12/22 20:49:03 Nit: This comment seems to just restate the functi
Alexander Yashkin 2016/12/23 19:44:08 Removed
184 SetExtensionDefaultSearchInPrefs(ext_info_copy.extension_id, ext_data);
185 }
186 return result;
187 }
188
189 void TemplateURLServiceTestUtil::RemoveExtensionControlledTURL(
190 const std::string& ext_id) {
191 TemplateURL* ext_turl = model()->FindTemplateURLForExtension(
192 ext_id, TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION);
193 ASSERT_TRUE(ext_turl);
194 ASSERT_TRUE(ext_turl->GetExtensionInfoForTesting());
195 if (ext_turl->GetExtensionInfoForTesting()->wants_to_be_default_engine) {
Peter Kasting 2016/12/22 20:49:03 Nit: No {}
Alexander Yashkin 2016/12/23 19:44:08 Removed
196 RemoveExtensionDefaultSearchFromPrefs(ext_id);
197 }
198 model()->RemoveExtensionControlledTURL(
199 ext_id, TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION);
200 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698