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

Unified Diff: chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc

Issue 11377049: Moving prepopulated search engines to a JSON file. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Rebased to fix conflict. Created 8 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
« no previous file with comments | « chrome/browser/search_engines/template_url_prepopulate_data.cc ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc
diff --git a/chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc b/chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc
index d23e108a1ae908849398739a74cbcde9636c8647..9d5b09eb44b190105f4aefeb0aa6367592a53449 100644
--- a/chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc
+++ b/chrome/browser/search_engines/template_url_prepopulate_data_unittest.cc
@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/command_line.h"
#include "base/file_util.h"
#include "base/files/scoped_temp_dir.h"
#include "base/memory/scoped_vector.h"
@@ -10,6 +11,7 @@
#include "chrome/browser/search_engines/template_url.h"
#include "chrome/browser/search_engines/template_url_prepopulate_data.h"
#include "chrome/browser/search_engines/template_url_service.h"
+#include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/testing_pref_service.h"
#include "chrome/test/base/testing_profile.h"
@@ -177,6 +179,41 @@ TEST(TemplateURLPrepopulateDataTest, ProvidersFromPrefs) {
EXPECT_EQ(2u, t_urls.size());
}
+// Verifies that built-in search providers are processed correctly.
+TEST(TemplateURLPrepopulateDataTest, ProvidersFromPrepopulated) {
+ // Use United States.
+ CommandLine::ForCurrentProcess()->AppendSwitchASCII(
+ switches::kCountry, "US");
+ TestingProfile profile;
+ ScopedVector<TemplateURL> t_urls;
+ size_t default_index;
+ TemplateURLPrepopulateData::GetPrepopulatedEngines(&profile, &t_urls.get(),
+ &default_index);
+
+ // Ensure all the URLs have the required fields populated.
+ ASSERT_FALSE(t_urls.empty());
+ for (size_t i = 0; i < t_urls.size(); ++i) {
+ ASSERT_FALSE(t_urls[i]->short_name().empty());
+ ASSERT_FALSE(t_urls[i]->keyword().empty());
+ ASSERT_FALSE(t_urls[i]->favicon_url().host().empty());
+ ASSERT_FALSE(t_urls[i]->url_ref().GetHost().empty());
+ ASSERT_FALSE(t_urls[i]->input_encodings().empty());
+ EXPECT_GT(t_urls[i]->prepopulate_id(), 0);
+ }
+
+ // Ensures the default URL is Google and has the optional fields filled.
+ EXPECT_EQ(ASCIIToUTF16("Google"), t_urls[default_index]->short_name());
+ EXPECT_FALSE(t_urls[default_index]->suggestions_url().empty());
+ EXPECT_FALSE(t_urls[default_index]->instant_url().empty());
+ // Expect at least 2 alternate_urls.
+ // This caught a bug with static initialization of arrays, so leave this in.
+ EXPECT_GT(t_urls[default_index]->alternate_urls().size(), 1u);
+ for (size_t i = 0; i < t_urls[default_index]->alternate_urls().size(); ++i)
+ EXPECT_FALSE(t_urls[default_index]->alternate_urls()[i].empty());
+ EXPECT_EQ(SEARCH_ENGINE_GOOGLE,
+ TemplateURLPrepopulateData::GetEngineType(t_urls[default_index]->url()));
+}
+
TEST(TemplateURLPrepopulateDataTest, GetEngineTypeBasic) {
EXPECT_EQ(SEARCH_ENGINE_OTHER,
TemplateURLPrepopulateData::GetEngineType("http://example.com/"));
« no previous file with comments | « chrome/browser/search_engines/template_url_prepopulate_data.cc ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698