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

Side by Side Diff: chrome/browser/chrome_plugin_browsertest.cc

Issue 2518493002: Remove obsolete plugin state handling code. (Closed)
Patch Set: Removed unusued function. Created 4 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
« no previous file with comments | « no previous file | chrome/browser/pdf/pdf_extension_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 static std::vector<content::WebPluginInfo> GetPlugins() { 130 static std::vector<content::WebPluginInfo> GetPlugins() {
131 std::vector<content::WebPluginInfo> plugins; 131 std::vector<content::WebPluginInfo> plugins;
132 scoped_refptr<content::MessageLoopRunner> runner = 132 scoped_refptr<content::MessageLoopRunner> runner =
133 new content::MessageLoopRunner; 133 new content::MessageLoopRunner;
134 content::PluginService::GetInstance()->GetPlugins( 134 content::PluginService::GetInstance()->GetPlugins(
135 base::Bind(&GetPluginsInfoCallback, &plugins, runner->QuitClosure())); 135 base::Bind(&GetPluginsInfoCallback, &plugins, runner->QuitClosure()));
136 runner->Run(); 136 runner->Run();
137 return plugins; 137 return plugins;
138 } 138 }
139 139
140 static void EnableFlash(bool enable, Profile* profile) {
141 std::vector<base::FilePath> paths;
142 GetFlashPath(&paths);
143 ASSERT_FALSE(paths.empty());
144
145 PluginPrefs* plugin_prefs = PluginPrefs::GetForProfile(profile).get();
146 scoped_refptr<content::MessageLoopRunner> runner =
147 new content::MessageLoopRunner;
148 scoped_refptr<CallbackBarrier> callback_barrier(
149 new CallbackBarrier(runner->QuitClosure()));
150 for (std::vector<base::FilePath>::iterator iter = paths.begin();
151 iter != paths.end(); ++iter) {
152 plugin_prefs->EnablePlugin(enable, *iter,
153 callback_barrier->CreateCallback());
154 }
155 runner->Run();
156 }
157
158 static void EnsureFlashProcessCount(int expected) { 140 static void EnsureFlashProcessCount(int expected) {
159 int actual = 0; 141 int actual = 0;
160 scoped_refptr<content::MessageLoopRunner> runner = 142 scoped_refptr<content::MessageLoopRunner> runner =
161 new content::MessageLoopRunner; 143 new content::MessageLoopRunner;
162 BrowserThread::PostTask( 144 BrowserThread::PostTask(
163 BrowserThread::IO, 145 BrowserThread::IO,
164 FROM_HERE, 146 FROM_HERE,
165 base::Bind(&CountPluginProcesses, &actual, runner->QuitClosure())); 147 base::Bind(&CountPluginProcesses, &actual, runner->QuitClosure()));
166 runner->Run(); 148 runner->Run();
167 ASSERT_EQ(expected, actual); 149 ASSERT_EQ(expected, actual);
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 // Try an incognito window. 207 // Try an incognito window.
226 ASSERT_NO_FATAL_FAILURE(LoadAndWait(CreateIncognitoBrowser(), url, true)); 208 ASSERT_NO_FATAL_FAILURE(LoadAndWait(CreateIncognitoBrowser(), url, true));
227 EnsureFlashProcessCount(1); 209 EnsureFlashProcessCount(1);
228 210
229 // Now kill Flash process and verify it reloads. 211 // Now kill Flash process and verify it reloads.
230 CrashFlash(); 212 CrashFlash();
231 EnsureFlashProcessCount(0); 213 EnsureFlashProcessCount(0);
232 214
233 ASSERT_NO_FATAL_FAILURE(LoadAndWait(browser(), url, true)); 215 ASSERT_NO_FATAL_FAILURE(LoadAndWait(browser(), url, true));
234 EnsureFlashProcessCount(1); 216 EnsureFlashProcessCount(1);
235
236 // Now try disabling it.
237 EnableFlash(false, profile);
238 CrashFlash();
239
240 ASSERT_NO_FATAL_FAILURE(LoadAndWait(browser(), url, false));
241 EnsureFlashProcessCount(0);
242
243 // Now enable it again.
244 EnableFlash(true, profile);
245 ASSERT_NO_FATAL_FAILURE(LoadAndWait(browser(), url, true));
246 EnsureFlashProcessCount(1);
247 } 217 }
248 218
249 #if defined(OFFICIAL_BUILD) 219 #if defined(OFFICIAL_BUILD)
250 // Verify that the official builds have the known set of plugins. 220 // Verify that the official builds have the known set of plugins.
251 IN_PROC_BROWSER_TEST_F(ChromePluginTest, InstalledPlugins) { 221 IN_PROC_BROWSER_TEST_F(ChromePluginTest, InstalledPlugins) {
252 const char* expected[] = { 222 const char* expected[] = {
253 "Chrome PDF Viewer", 223 "Chrome PDF Viewer",
254 "Shockwave Flash", 224 "Shockwave Flash",
255 "Native Client", 225 "Native Client",
256 }; 226 };
257 227
258 std::vector<content::WebPluginInfo> plugins = GetPlugins(); 228 std::vector<content::WebPluginInfo> plugins = GetPlugins();
259 for (size_t i = 0; i < arraysize(expected); ++i) { 229 for (size_t i = 0; i < arraysize(expected); ++i) {
260 size_t j = 0; 230 size_t j = 0;
261 for (; j < plugins.size(); ++j) { 231 for (; j < plugins.size(); ++j) {
262 if (plugins[j].name == base::ASCIIToUTF16(expected[i])) 232 if (plugins[j].name == base::ASCIIToUTF16(expected[i]))
263 break; 233 break;
264 } 234 }
265 ASSERT_TRUE(j != plugins.size()) << "Didn't find " << expected[i]; 235 ASSERT_TRUE(j != plugins.size()) << "Didn't find " << expected[i];
266 } 236 }
267 } 237 }
268 #endif 238 #endif
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/pdf/pdf_extension_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698