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

Unified Diff: components/search_engines/default_search_manager_unittest.cc

Issue 2479113002: Make extensions DSE persistent in browser prefs (Closed)
Patch Set: Move extension overriden DSE logic to setting_override_api.cc Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: components/search_engines/default_search_manager_unittest.cc
diff --git a/components/search_engines/default_search_manager_unittest.cc b/components/search_engines/default_search_manager_unittest.cc
index a8df14e94ba0a83dcdcaa0d77edaa7862fe38952..bb1d9b33fbd4dc1420c5f8292913329b4a903f82 100644
--- a/components/search_engines/default_search_manager_unittest.cc
+++ b/components/search_engines/default_search_manager_unittest.cc
@@ -19,6 +19,7 @@
#include "components/search_engines/search_engines_pref_names.h"
#include "components/search_engines/template_url_data.h"
#include "components/search_engines/template_url_prepopulate_data.h"
+#include "components/search_engines/util.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace {
@@ -90,39 +91,23 @@ void SetPolicy(user_prefs::TestingPrefServiceSyncable* prefs,
EXPECT_FALSE(data->keyword().empty());
EXPECT_FALSE(data->url().empty());
}
- std::unique_ptr<base::DictionaryValue> entry(new base::DictionaryValue);
- entry->SetString(DefaultSearchManager::kShortName, data->short_name());
- entry->SetString(DefaultSearchManager::kKeyword, data->keyword());
- entry->SetString(DefaultSearchManager::kURL, data->url());
- entry->SetString(DefaultSearchManager::kFaviconURL, data->favicon_url.spec());
- entry->SetString(DefaultSearchManager::kSuggestionsURL,
- data->suggestions_url);
- entry->SetBoolean(DefaultSearchManager::kSafeForAutoReplace,
- data->safe_for_autoreplace);
- std::unique_ptr<base::ListValue> alternate_urls(new base::ListValue);
- for (std::vector<std::string>::const_iterator it =
- data->alternate_urls.begin();
- it != data->alternate_urls.end();
- ++it) {
- alternate_urls->AppendString(*it);
- }
- entry->Set(DefaultSearchManager::kAlternateURLs, alternate_urls.release());
-
- std::unique_ptr<base::ListValue> encodings(new base::ListValue);
- for (std::vector<std::string>::const_iterator it =
- data->input_encodings.begin();
- it != data->input_encodings.end();
- ++it) {
- encodings->AppendString(*it);
- }
- entry->Set(DefaultSearchManager::kInputEncodings, encodings.release());
-
- entry->SetString(DefaultSearchManager::kSearchTermsReplacementKey,
- data->search_terms_replacement_key);
+ std::unique_ptr<base::DictionaryValue> entry(
+ TemplateUrlDataToDictionary(*data));
entry->SetBoolean(DefaultSearchManager::kDisabledByPolicy, !enabled);
prefs->SetManagedPref(kDefaultSearchProviderData, entry.release());
}
+void SetExtensionControlledDSE(const std::string& extension_id,
+ user_prefs::TestingPrefServiceSyncable* prefs,
+ TemplateURLData* data) {
+
+}
+
+void ClearExtensionControlledDSE(
+ user_prefs::TestingPrefServiceSyncable* prefs) {
+
+}
vasilii 2016/11/09 14:29:56 Why are they empty?
Alexander Yashkin 2016/11/28 19:16:17 I was thinking at first to modify this unittest to
+
std::unique_ptr<TemplateURLData> GenerateDummyTemplateURLData(
const std::string& type) {
std::unique_ptr<TemplateURLData> data(new TemplateURLData());
@@ -285,8 +270,26 @@ TEST_F(DefaultSearchManagerTest, DefaultSearchSetByPolicy) {
EXPECT_EQ(DefaultSearchManager::FROM_USER, source);
}
+
+class DefaultSearchManagerExensionControlled : public testing::Test {
+ void SetUp() override {
+ pref_service_.reset(new user_prefs::TestingPrefServiceSyncable);
+ DefaultSearchManager::RegisterProfilePrefs(pref_service_->registry());
+ TemplateURLPrepopulateData::RegisterProfilePrefs(pref_service_->registry());
+ }
+
+ user_prefs::TestingPrefServiceSyncable* pref_service() {
+ return pref_service_.get();
+ }
+
+ private:
+ std::unique_ptr<user_prefs::TestingPrefServiceSyncable> pref_service_;
+
+ DISALLOW_COPY_AND_ASSIGN(DefaultSearchManagerExensionControlled);
+};
+
// Test DefaultSearchManager handles extension-controlled DSEs correctly.
-TEST_F(DefaultSearchManagerTest, DefaultSearchSetByExtension) {
+TEST_F(DefaultSearchManagerExensionControlled, DefaultSearchSetByExtension) {
DefaultSearchManager manager(pref_service(),
DefaultSearchManager::ObserverCallback());
std::unique_ptr<TemplateURLData> data = GenerateDummyTemplateURLData("user");
@@ -299,7 +302,8 @@ TEST_F(DefaultSearchManagerTest, DefaultSearchSetByExtension) {
// Extension trumps prefs:
std::unique_ptr<TemplateURLData> extension_data_1 =
GenerateDummyTemplateURLData("ext1");
- manager.SetExtensionControlledDefaultSearchEngine(*extension_data_1);
+// manager.SetExtensionControlledDefaultSearchEngine(*extension_data_1);
vasilii 2016/11/09 14:29:56 Looks like you wanted to change something in this
Alexander Yashkin 2016/11/28 19:16:17 Deleted, see comment above.
+ SetExtensionControlledDSE("ext_id1", pref_service(), extension_data_1.get());
ExpectSimilar(extension_data_1.get(),
manager.GetDefaultSearchEngine(&source));
@@ -319,14 +323,17 @@ TEST_F(DefaultSearchManagerTest, DefaultSearchSetByExtension) {
GenerateDummyTemplateURLData("ext2");
std::unique_ptr<TemplateURLData> extension_data_3 =
GenerateDummyTemplateURLData("ext3");
- manager.SetExtensionControlledDefaultSearchEngine(*extension_data_2);
- manager.SetExtensionControlledDefaultSearchEngine(*extension_data_3);
+ //manager.SetExtensionControlledDefaultSearchEngine(*extension_data_2);
+ SetExtensionControlledDSE("ext_id2", pref_service(), extension_data_2.get());
+ //manager.SetExtensionControlledDefaultSearchEngine(*extension_data_3);
+ SetExtensionControlledDSE("ext_id3", pref_service(), extension_data_3.get);
ExpectSimilar(extension_data_3.get(),
manager.GetDefaultSearchEngine(&source));
EXPECT_EQ(DefaultSearchManager::FROM_EXTENSION, source);
- manager.ClearExtensionControlledDefaultSearchEngine();
+ // manager.ClearExtensionControlledDefaultSearchEngine();
+ ClearExtensionControlledDSE(pref_service());
ExpectSimilar(data.get(), manager.GetDefaultSearchEngine(&source));
EXPECT_EQ(DefaultSearchManager::FROM_USER, source);

Powered by Google App Engine
This is Rietveld 408576698