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

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

Issue 62145: Yet another scrape atttempt (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/test/data/template_url_scraper/submit_handler/index.html » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/search_engines/template_url_scraper_unittest.cc
===================================================================
--- chrome/browser/search_engines/template_url_scraper_unittest.cc (revision 0)
+++ chrome/browser/search_engines/template_url_scraper_unittest.cc (revision 0)
@@ -0,0 +1,90 @@
+// Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this
+// source code is governed by a BSD-style license that can be found in the
+// LICENSE file.
+
+#include "chrome/browser/browser.h"
+#include "chrome/browser/profile.h"
+#include "chrome/browser/search_engines/template_url_model.h"
+#include "chrome/browser/search_engines/template_url_prepopulate_data.h"
+#include "chrome/common/notification_registrar.h"
+#include "chrome/common/notification_source.h"
+#include "chrome/common/notification_type.h"
+#include "chrome/test/in_process_browser_test.h"
+#include "chrome/test/ui_test_utils.h"
+#include "net/base/host_resolver_unittest.h"
+#include "net/base/net_util.h"
+
+namespace {
+class TemplateURLScraperTest : public InProcessBrowserTest {
+ public:
+ TemplateURLScraperTest() {
+ }
+
+ protected:
+ virtual void ConfigureHostMapper(net::RuleBasedHostMapper* host_mapper) {
+ InProcessBrowserTest::ConfigureHostMapper(host_mapper);
+ // We use foo.com in our tests.
+ host_mapper->AddRule("*.foo.com", "localhost");
+ }
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(TemplateURLScraperTest);
+};
+
+class TemplateURLModelLoader : public NotificationObserver {
+ public:
+ explicit TemplateURLModelLoader(TemplateURLModel* model) : model_(model) {
+ registrar_.Add(this, NotificationType::TEMPLATE_URL_MODEL_LOADED,
+ Source<TemplateURLModel>(model));
+ model_->Load();
+ ui_test_utils::RunMessageLoop();
+ }
+
+ virtual void Observe(NotificationType type,
+ const NotificationSource& source,
+ const NotificationDetails& details) {
+ if (type == NotificationType::TEMPLATE_URL_MODEL_LOADED &&
+ Source<TemplateURLModel>(source).ptr() == model_) {
+ MessageLoop::current()->Quit();
+ }
+ }
+
+ private:
+ NotificationRegistrar registrar_;
+
+ TemplateURLModel* model_;
+
+ DISALLOW_COPY_AND_ASSIGN(TemplateURLModelLoader);
+};
+
+} // namespace
+
+/*
+IN_PROC_BROWSER_TEST_F(TemplateURLScraperTest, ScrapeWithOnSubmit) {
+ TemplateURLModel* template_urls = browser()->profile()->GetTemplateURLModel();
+ TemplateURLModelLoader loader(template_urls);
+
+ std::vector<const TemplateURL*> all_urls = template_urls->GetTemplateURLs();
+
+ // We need to substract the default pre-populated engines that the profile is
+ // set up with.
+ size_t default_index = 0;
+ std::vector<TemplateURL*> prepopulate_urls;
+ TemplateURLPrepopulateData::GetPrepopulatedEngines(
+ browser()->profile()->GetPrefs(),
+ &prepopulate_urls,
+ &default_index);
+
+ EXPECT_EQ(prepopulate_urls.size(), all_urls.size());
+
+ scoped_refptr<HTTPTestServer> server(
+ HTTPTestServer::CreateServerWithFileRootURL(
+ L"chrome/test/data/template_url_scraper/submit_handler", L"/",
+ g_browser_process->io_thread()->message_loop()));
+ ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
+ browser(), GURL("http://www.foo.com:1337/"), 2);
+
+ all_urls = template_urls->GetTemplateURLs();
+ EXPECT_EQ(1, all_urls.size() - prepopulate_urls.size());
+}
+*/
« no previous file with comments | « no previous file | chrome/test/data/template_url_scraper/submit_handler/index.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698