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

Unified Diff: chrome/browser/plugin_prefs_unittest.cc

Issue 10933044: Move chrome/browser/plugin_* to chrome/browser/plugins/ (Closed) Base URL: http://git.chromium.org/chromium/src.git@remove_plugin_group
Patch Set: . Created 8 years, 3 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 | « chrome/browser/plugin_prefs_factory.cc ('k') | chrome/browser/plugin_status_pref_setter.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/plugin_prefs_unittest.cc
diff --git a/chrome/browser/plugin_prefs_unittest.cc b/chrome/browser/plugin_prefs_unittest.cc
deleted file mode 100644
index 5ae3647125fa9eb152d49724a226c8ba0b582710..0000000000000000000000000000000000000000
--- a/chrome/browser/plugin_prefs_unittest.cc
+++ /dev/null
@@ -1,256 +0,0 @@
-// Copyright (c) 2012 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/plugin_prefs.h"
-
-#include "base/at_exit.h"
-#include "base/bind.h"
-#include "base/message_loop.h"
-#include "base/path_service.h"
-#include "base/run_loop.h"
-#include "base/utf_string_conversions.h"
-#include "chrome/common/chrome_constants.h"
-#include "chrome/common/chrome_paths.h"
-#include "content/public/browser/plugin_service.h"
-#include "content/public/test/test_browser_thread.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "webkit/plugins/npapi/mock_plugin_list.cc"
-#include "webkit/plugins/webplugininfo.h"
-
-using content::BrowserThread;
-using content::PluginService;
-
-namespace {
-
-void CanEnablePluginCallback(const base::Closure& quit_closure,
- bool expected_can_change,
- bool did_change) {
- EXPECT_EQ(expected_can_change, did_change);
- quit_closure.Run();
-}
-
-FilePath GetComponentUpdatedPepperFlashPath(
- const FilePath::StringType& version) {
- FilePath path;
- EXPECT_TRUE(PathService::Get(
- chrome::DIR_COMPONENT_UPDATED_PEPPER_FLASH_PLUGIN, &path));
- path = path.Append(version);
- path = path.Append(chrome::kPepperFlashPluginFilename);
- return path;
-}
-
-FilePath GetBundledPepperFlashPath() {
- FilePath path;
- EXPECT_TRUE(PathService::Get(chrome::FILE_PEPPER_FLASH_PLUGIN, &path));
- return path;
-}
-
-} // namespace
-
-class PluginPrefsTest : public ::testing::Test {
- public:
- virtual void SetUp() OVERRIDE {
- plugin_prefs_ = new PluginPrefs();
- }
-
- void SetPolicyEnforcedPluginPatterns(
- const std::set<string16>& disabled,
- const std::set<string16>& disabled_exceptions,
- const std::set<string16>& enabled) {
- plugin_prefs_->SetPolicyEnforcedPluginPatterns(
- disabled, disabled_exceptions, enabled);
- }
-
- protected:
- void EnablePluginSynchronously(bool enabled,
- const FilePath& path,
- bool expected_can_change) {
- base::RunLoop run_loop;
- plugin_prefs_->EnablePlugin(
- enabled, path,
- base::Bind(&CanEnablePluginCallback, run_loop.QuitClosure(),
- expected_can_change));
- run_loop.Run();
- }
-
- scoped_refptr<PluginPrefs> plugin_prefs_;
-};
-
-TEST_F(PluginPrefsTest, DisabledByPolicy) {
- std::set<string16> disabled_plugins;
- disabled_plugins.insert(ASCIIToUTF16("Disable this!"));
- disabled_plugins.insert(ASCIIToUTF16("*Google*"));
- SetPolicyEnforcedPluginPatterns(disabled_plugins,
- std::set<string16>(),
- std::set<string16>());
-
- EXPECT_EQ(PluginPrefs::NO_POLICY,
- plugin_prefs_->PolicyStatusForPlugin(ASCIIToUTF16("42")));
- EXPECT_EQ(PluginPrefs::POLICY_DISABLED,
- plugin_prefs_->PolicyStatusForPlugin(
- ASCIIToUTF16("Disable this!")));
- EXPECT_EQ(PluginPrefs::POLICY_DISABLED,
- plugin_prefs_->PolicyStatusForPlugin(ASCIIToUTF16("Google Earth")));
-}
-
-TEST_F(PluginPrefsTest, EnabledByPolicy) {
- std::set<string16> enabled_plugins;
- enabled_plugins.insert(ASCIIToUTF16("Enable that!"));
- enabled_plugins.insert(ASCIIToUTF16("PDF*"));
- SetPolicyEnforcedPluginPatterns(std::set<string16>(),
- std::set<string16>(),
- enabled_plugins);
-
- EXPECT_EQ(PluginPrefs::NO_POLICY,
- plugin_prefs_->PolicyStatusForPlugin(ASCIIToUTF16("42")));
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(ASCIIToUTF16("Enable that!")));
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(ASCIIToUTF16("PDF Reader")));
-}
-
-TEST_F(PluginPrefsTest, EnabledAndDisabledByPolicy) {
- const string16 k42(ASCIIToUTF16("42"));
- const string16 kEnabled(ASCIIToUTF16("Enabled"));
- const string16 kEnabled2(ASCIIToUTF16("Enabled 2"));
- const string16 kEnabled3(ASCIIToUTF16("Enabled 3"));
- const string16 kException(ASCIIToUTF16("Exception"));
- const string16 kException2(ASCIIToUTF16("Exception 2"));
- const string16 kGoogleMars(ASCIIToUTF16("Google Mars"));
- const string16 kGoogleEarth(ASCIIToUTF16("Google Earth"));
-
- std::set<string16> disabled_plugins;
- std::set<string16> disabled_plugins_exceptions;
- std::set<string16> enabled_plugins;
-
- disabled_plugins.insert(kEnabled);
- disabled_plugins_exceptions.insert(kEnabled);
- enabled_plugins.insert(kEnabled);
-
- disabled_plugins_exceptions.insert(kException);
-
- disabled_plugins.insert(kEnabled2);
- enabled_plugins.insert(kEnabled2);
-
- disabled_plugins.insert(kException2);
- disabled_plugins_exceptions.insert(kException2);
-
- disabled_plugins_exceptions.insert(kEnabled3);
- enabled_plugins.insert(kEnabled3);
-
- SetPolicyEnforcedPluginPatterns(disabled_plugins,
- disabled_plugins_exceptions,
- enabled_plugins);
-
- EXPECT_EQ(PluginPrefs::NO_POLICY, plugin_prefs_->PolicyStatusForPlugin(k42));
-
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(kEnabled));
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(kEnabled2));
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(kEnabled3));
-
- EXPECT_EQ(PluginPrefs::NO_POLICY,
- plugin_prefs_->PolicyStatusForPlugin(kException));
- EXPECT_EQ(PluginPrefs::NO_POLICY,
- plugin_prefs_->PolicyStatusForPlugin(kException2));
-
- disabled_plugins.clear();
- disabled_plugins_exceptions.clear();
- enabled_plugins.clear();
-
- disabled_plugins.insert(ASCIIToUTF16("*"));
- disabled_plugins_exceptions.insert(ASCIIToUTF16("*Google*"));
- enabled_plugins.insert(kGoogleEarth);
-
- SetPolicyEnforcedPluginPatterns(disabled_plugins,
- disabled_plugins_exceptions,
- enabled_plugins);
-
- EXPECT_EQ(PluginPrefs::POLICY_ENABLED,
- plugin_prefs_->PolicyStatusForPlugin(kGoogleEarth));
- EXPECT_EQ(PluginPrefs::NO_POLICY,
- plugin_prefs_->PolicyStatusForPlugin(kGoogleMars));
- EXPECT_EQ(PluginPrefs::POLICY_DISABLED,
- plugin_prefs_->PolicyStatusForPlugin(k42));
-}
-
-TEST_F(PluginPrefsTest, UnifiedPepperFlashState) {
- base::ShadowingAtExitManager at_exit_manager_; // Destroys the PluginService.
-
- MessageLoop message_loop;
- content::TestBrowserThread ui_thread(BrowserThread::UI, &message_loop);
- webkit::npapi::MockPluginList plugin_list(NULL, 0);
- PluginService::GetInstance()->SetPluginListForTesting(&plugin_list);
- PluginService::GetInstance()->Init();
- plugin_prefs_->SetPluginListForTesting(&plugin_list);
-
- string16 component_updated_plugin_name(
- ASCIIToUTF16("Component-updated Pepper Flash"));
- webkit::WebPluginInfo component_updated_plugin_1(
- component_updated_plugin_name,
- GetComponentUpdatedPepperFlashPath(FILE_PATH_LITERAL("11.3.31.227")),
- ASCIIToUTF16("11.3.31.227"),
- ASCIIToUTF16(""));
- webkit::WebPluginInfo component_updated_plugin_2(
- component_updated_plugin_name,
- GetComponentUpdatedPepperFlashPath(FILE_PATH_LITERAL("11.3.31.228")),
- ASCIIToUTF16("11.3.31.228"),
- ASCIIToUTF16(""));
- webkit::WebPluginInfo bundled_plugin(ASCIIToUTF16("Pepper Flash"),
- GetBundledPepperFlashPath(),
- ASCIIToUTF16("11.3.31.229"),
- ASCIIToUTF16(""));
-
- plugin_list.AddPluginToLoad(component_updated_plugin_1);
- plugin_list.AddPluginToLoad(component_updated_plugin_2);
- plugin_list.AddPluginToLoad(bundled_plugin);
-
- // Set the state of any of the three plugins will affect the others.
- EnablePluginSynchronously(true, component_updated_plugin_1.path, true);
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- EnablePluginSynchronously(false, bundled_plugin.path, true);
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- EnablePluginSynchronously(true, component_updated_plugin_2.path, true);
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- std::set<string16> disabled_plugins;
- disabled_plugins.insert(component_updated_plugin_name);
- SetPolicyEnforcedPluginPatterns(disabled_plugins,
- std::set<string16>(),
- std::set<string16>());
-
- // Policy settings should be respected.
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- EnablePluginSynchronously(false, bundled_plugin.path, true);
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- // Trying to change the state of a policy-enforced plugin should not take
- // effect. And it shouldn't change the state of other plugins either, even if
- // they are not restricted by any policy.
- EnablePluginSynchronously(true, component_updated_plugin_1.path, false);
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- EnablePluginSynchronously(true, bundled_plugin.path, true);
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_1));
- EXPECT_FALSE(plugin_prefs_->IsPluginEnabled(component_updated_plugin_2));
- EXPECT_TRUE(plugin_prefs_->IsPluginEnabled(bundled_plugin));
-
- plugin_prefs_->SetPluginListForTesting(NULL);
- PluginService::GetInstance()->SetPluginListForTesting(NULL);
-}
« no previous file with comments | « chrome/browser/plugin_prefs_factory.cc ('k') | chrome/browser/plugin_status_pref_setter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698