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

Side by Side Diff: chrome/browser/chromeos/gview_request_interceptor_unittest.cc

Issue 8493026: Revert r108760 / reland r108744, r108753 w/ fix (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rename plugin list accessor to plugin_list() Created 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <string> 5 #include <string>
6 #include <vector> 6 #include <vector>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "chrome/browser/chrome_plugin_service_filter.h" 10 #include "chrome/browser/chrome_plugin_service_filter.h"
11 #include "chrome/browser/chromeos/gview_request_interceptor.h" 11 #include "chrome/browser/chromeos/gview_request_interceptor.h"
12 #include "chrome/browser/plugin_prefs.h" 12 #include "chrome/browser/plugin_prefs.h"
13 #include "chrome/browser/plugin_prefs_factory.h" 13 #include "chrome/browser/plugin_prefs_factory.h"
14 #include "chrome/common/chrome_paths.h" 14 #include "chrome/common/chrome_paths.h"
15 #include "chrome/test/base/testing_pref_service.h" 15 #include "chrome/test/base/testing_pref_service.h"
16 #include "content/browser/mock_resource_context.h" 16 #include "content/browser/mock_resource_context.h"
17 #include "content/browser/plugin_service.h" 17 #include "content/browser/plugin_service.h"
18 #include "content/browser/renderer_host/dummy_resource_handler.h" 18 #include "content/browser/renderer_host/dummy_resource_handler.h"
19 #include "content/browser/renderer_host/resource_dispatcher_host_request_info.h" 19 #include "content/browser/renderer_host/resource_dispatcher_host_request_info.h"
20 #include "content/test/test_browser_thread.h" 20 #include "content/test/test_browser_thread.h"
21 #include "net/base/load_flags.h" 21 #include "net/base/load_flags.h"
22 #include "net/url_request/url_request.h" 22 #include "net/url_request/url_request.h"
23 #include "net/url_request/url_request_job.h" 23 #include "net/url_request/url_request_job.h"
24 #include "net/url_request/url_request_job_factory.h" 24 #include "net/url_request/url_request_job_factory.h"
25 #include "net/url_request/url_request_test_job.h" 25 #include "net/url_request/url_request_test_job.h"
26 #include "net/url_request/url_request_test_util.h" 26 #include "net/url_request/url_request_test_util.h"
27 #include "testing/gtest/include/gtest/gtest.h" 27 #include "testing/gtest/include/gtest/gtest.h"
28 #include "webkit/plugins/npapi/plugin_list.h"
29 28
30 using content::BrowserThread; 29 using content::BrowserThread;
31 30
32 namespace chromeos { 31 namespace chromeos {
33 32
34 namespace { 33 namespace {
35 34
36 const char kPdfUrl[] = "http://foo.com/file.pdf"; 35 const char kPdfUrl[] = "http://foo.com/file.pdf";
37 const char kPptUrl[] = "http://foo.com/file.ppt"; 36 const char kPptUrl[] = "http://foo.com/file.ppt";
38 const char kHtmlUrl[] = "http://foo.com/index.html"; 37 const char kHtmlUrl[] = "http://foo.com/index.html";
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 plugin_prefs_->SetPrefs(&prefs_); 108 plugin_prefs_->SetPrefs(&prefs_);
110 ChromePluginServiceFilter* filter = 109 ChromePluginServiceFilter* filter =
111 ChromePluginServiceFilter::GetInstance(); 110 ChromePluginServiceFilter::GetInstance();
112 filter->RegisterResourceContext(plugin_prefs_, resource_context); 111 filter->RegisterResourceContext(plugin_prefs_, resource_context);
113 PluginService::GetInstance()->set_filter(filter); 112 PluginService::GetInstance()->set_filter(filter);
114 113
115 ASSERT_TRUE(PathService::Get(chrome::FILE_PDF_PLUGIN, &pdf_path_)); 114 ASSERT_TRUE(PathService::Get(chrome::FILE_PDF_PLUGIN, &pdf_path_));
116 115
117 handler_ = new content::DummyResourceHandler(); 116 handler_ = new content::DummyResourceHandler();
118 117
119 PluginService::GetInstance()->RefreshPluginList(); 118 PluginService::GetInstance()->RefreshPlugins();
120 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop)); 119 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop));
121 MessageLoop::current()->RunAllPending(); 120 MessageLoop::current()->RunAllPending();
122 } 121 }
123 122
124 virtual void TearDown() { 123 virtual void TearDown() {
125 plugin_prefs_->ShutdownOnUIThread(); 124 plugin_prefs_->ShutdownOnUIThread();
126 content::ResourceContext* resource_context = 125 content::ResourceContext* resource_context =
127 content::MockResourceContext::GetInstance(); 126 content::MockResourceContext::GetInstance();
128 net::URLRequestContext* request_context = 127 net::URLRequestContext* request_context =
129 resource_context->request_context(); 128 resource_context->request_context();
130 request_context->set_job_factory(old_factory_); 129 request_context->set_job_factory(old_factory_);
131 ChromePluginServiceFilter* filter = 130 ChromePluginServiceFilter* filter =
132 ChromePluginServiceFilter::GetInstance(); 131 ChromePluginServiceFilter::GetInstance();
133 filter->UnregisterResourceContext(resource_context); 132 filter->UnregisterResourceContext(resource_context);
134 PluginService::GetInstance()->set_filter(NULL); 133 PluginService::GetInstance()->set_filter(NULL);
135 } 134 }
136 135
137 // GetPluginInfoByPath() will only use stale information. Because plugin 136 // GetPluginInfoByPath() will only use stale information. Because plugin
138 // refresh is asynchronous, spin a MessageLoop until the callback is run, 137 // refresh is asynchronous, spin a MessageLoop until the callback is run,
139 // after which, the test will continue. 138 // after which, the test will continue.
140 void RegisterPDFPlugin() { 139 void RegisterPDFPlugin() {
141 webkit::WebPluginInfo info; 140 webkit::WebPluginInfo info;
142 info.path = pdf_path_; 141 info.path = pdf_path_;
143 webkit::npapi::PluginList::Singleton()->RegisterInternalPlugin(info); 142 PluginService::GetInstance()->RegisterInternalPlugin(info);
144 143
145 PluginService::GetInstance()->RefreshPluginList(); 144 PluginService::GetInstance()->RefreshPlugins();
146 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop)); 145 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop));
147 MessageLoop::current()->RunAllPending(); 146 MessageLoop::current()->RunAllPending();
148 } 147 }
149 148
150 void UnregisterPDFPlugin() { 149 void UnregisterPDFPlugin() {
151 webkit::npapi::PluginList::Singleton()->UnregisterInternalPlugin(pdf_path_); 150 PluginService::GetInstance()->UnregisterInternalPlugin(pdf_path_);
152 151
153 PluginService::GetInstance()->RefreshPluginList(); 152 PluginService::GetInstance()->RefreshPlugins();
154 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop)); 153 PluginService::GetInstance()->GetPlugins(base::Bind(&QuitMessageLoop));
155 MessageLoop::current()->RunAllPending(); 154 MessageLoop::current()->RunAllPending();
156 } 155 }
157 156
158 void SetPDFPluginLoadedState(bool want_loaded) { 157 void SetPDFPluginLoadedState(bool want_loaded) {
159 webkit::WebPluginInfo info; 158 webkit::WebPluginInfo info;
160 bool is_loaded = PluginService::GetInstance()->GetPluginInfoByPath( 159 bool is_loaded = PluginService::GetInstance()->GetPluginInfoByPath(
161 pdf_path_, &info); 160 pdf_path_, &info);
162 if (is_loaded && !want_loaded) { 161 if (is_loaded && !want_loaded) {
163 UnregisterPDFPlugin(); 162 UnregisterPDFPlugin();
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
296 SetupRequest(&request); 295 SetupRequest(&request);
297 request.Start(); 296 request.Start();
298 MessageLoop::current()->Run(); 297 MessageLoop::current()->Run();
299 EXPECT_EQ(0, test_delegate_.received_redirect_count()); 298 EXPECT_EQ(0, test_delegate_.received_redirect_count());
300 EXPECT_EQ(GURL(kPdfBlob), request.url()); 299 EXPECT_EQ(GURL(kPdfBlob), request.url());
301 } 300 }
302 301
303 } // namespace 302 } // namespace
304 303
305 } // namespace chromeos 304 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/browser_process_impl.cc ('k') | chrome/browser/component_updater/npapi_flash_component_installer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698