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

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

Issue 23710022: Convert NOTIFICATION_TEMPLATE_URL_SERVICE_LOADED to CallbackList (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 2 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 unified diff | Download patch | Annotate | Revision Log
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/chrome_notification_types.h"
6 #include "chrome/browser/profiles/profile.h" 5 #include "chrome/browser/profiles/profile.h"
7 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" 6 #include "chrome/browser/search_engines/template_url_prepopulate_data.h"
8 #include "chrome/browser/search_engines/template_url_service.h" 7 #include "chrome/browser/search_engines/template_url_service.h"
9 #include "chrome/browser/search_engines/template_url_service_factory.h" 8 #include "chrome/browser/search_engines/template_url_service_factory.h"
10 #include "chrome/browser/ui/browser.h" 9 #include "chrome/browser/ui/browser.h"
11 #include "chrome/test/base/in_process_browser_test.h" 10 #include "chrome/test/base/in_process_browser_test.h"
12 #include "chrome/test/base/ui_test_utils.h" 11 #include "chrome/test/base/ui_test_utils.h"
13 #include "content/public/browser/notification_registrar.h"
14 #include "content/public/browser/notification_source.h"
15 #include "net/base/net_util.h" 12 #include "net/base/net_util.h"
16 #include "net/dns/mock_host_resolver.h" 13 #include "net/dns/mock_host_resolver.h"
17 14
18 namespace { 15 namespace {
19 class TemplateURLScraperTest : public InProcessBrowserTest { 16 class TemplateURLScraperTest : public InProcessBrowserTest {
20 public: 17 public:
21 TemplateURLScraperTest() { 18 TemplateURLScraperTest() {
22 } 19 }
23 20
24 private: 21 private:
25 DISALLOW_COPY_AND_ASSIGN(TemplateURLScraperTest); 22 DISALLOW_COPY_AND_ASSIGN(TemplateURLScraperTest);
26 }; 23 };
27 24
28 class TemplateURLServiceLoader : public content::NotificationObserver { 25 class TemplateURLServiceLoader {
29 public: 26 public:
30 explicit TemplateURLServiceLoader(TemplateURLService* model) : model_(model) { 27 explicit TemplateURLServiceLoader(TemplateURLService* model) : model_(model) {
31 registrar_.Add(this, chrome::NOTIFICATION_TEMPLATE_URL_SERVICE_LOADED, 28 scoped_refptr<content::MessageLoopRunner> message_loop_runner =
32 content::Source<TemplateURLService>(model)); 29 new content::MessageLoopRunner;
30 scoped_ptr<TemplateURLService::Subscription> subscription =
31 model_->RegisterOnLoadedCallback(
32 message_loop_runner->QuitClosure());
33 model_->Load(); 33 model_->Load();
34 content::RunMessageLoop(); 34 message_loop_runner->Run();
35 }
36
37 virtual void Observe(int type,
38 const content::NotificationSource& source,
39 const content::NotificationDetails& details) {
40 if (type == chrome::NOTIFICATION_TEMPLATE_URL_SERVICE_LOADED &&
41 content::Source<TemplateURLService>(source).ptr() == model_) {
42 base::MessageLoop::current()->Quit();
43 }
44 } 35 }
45 36
46 private: 37 private:
47 content::NotificationRegistrar registrar_;
48
49 TemplateURLService* model_; 38 TemplateURLService* model_;
50 39
51 DISALLOW_COPY_AND_ASSIGN(TemplateURLServiceLoader); 40 DISALLOW_COPY_AND_ASSIGN(TemplateURLServiceLoader);
52 }; 41 };
53 42
54 } // namespace 43 } // namespace
55 44
56 /* 45 /*
57 IN_PROC_BROWSER_TEST_F(TemplateURLScraperTest, ScrapeWithOnSubmit) { 46 IN_PROC_BROWSER_TEST_F(TemplateURLScraperTest, ScrapeWithOnSubmit) {
58 host_resolver()->AddRule("*.foo.com", "localhost"); 47 host_resolver()->AddRule("*.foo.com", "localhost");
(...skipping 20 matching lines...) Expand all
79 HTTPTestServer::CreateServerWithFileRootURL( 68 HTTPTestServer::CreateServerWithFileRootURL(
80 L"chrome/test/data/template_url_scraper/submit_handler", L"/", 69 L"chrome/test/data/template_url_scraper/submit_handler", L"/",
81 g_browser_process->io_thread()->message_loop())); 70 g_browser_process->io_thread()->message_loop()));
82 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete( 71 ui_test_utils::NavigateToURLBlockUntilNavigationsComplete(
83 browser(), GURL("http://www.foo.com:1337/"), 2); 72 browser(), GURL("http://www.foo.com:1337/"), 2);
84 73
85 all_urls = template_urls->GetTemplateURLs(); 74 all_urls = template_urls->GetTemplateURLs();
86 EXPECT_EQ(1, all_urls.size() - prepopulate_urls.size()); 75 EXPECT_EQ(1, all_urls.size() - prepopulate_urls.size());
87 } 76 }
88 */ 77 */
OLDNEW
« no previous file with comments | « chrome/browser/search_engines/template_url_fetcher.cc ('k') | chrome/browser/search_engines/template_url_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698