Chromium Code Reviews| 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); |