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

Unified Diff: webkit/glue/plugins/plugin_group.h

Issue 5783005: PluginList: Unit tests and bugfixes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: address comments; rebase Created 10 years 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
Index: webkit/glue/plugins/plugin_group.h
diff --git a/webkit/glue/plugins/plugin_group.h b/webkit/glue/plugins/plugin_group.h
index 097a1112da16329f00472ba2bf5c3cd7a2d6e61b..87b519cdd970576487ebcf301409d3fab0fd7368 100644
--- a/webkit/glue/plugins/plugin_group.h
+++ b/webkit/glue/plugins/plugin_group.h
@@ -24,6 +24,9 @@ struct WebPluginInfo;
namespace NPAPI {
class PluginList;
};
+namespace plugin_test_internal {
+class PluginListWithoutFileIO;
+}
// Hard-coded version ranges for plugin groups.
struct VersionRangeDefinition {
@@ -112,6 +115,8 @@ class PluginGroup {
// Returns the positions of the plugins in the group.
std::vector<int>& GetPluginPositions();
+ bool IsEmpty() const;
+
// Enables/disables this group. This enables/disables all plugins in the
// group.
void Enable(bool enable);
@@ -154,6 +159,7 @@ class PluginGroup {
typedef std::map<std::string, PluginGroup*> PluginMap;
friend class NPAPI::PluginList;
+ friend class plugin_test_internal::PluginListWithoutFileIO;
friend class PluginGroupTest;
friend class TableModelArrayControllerTest;
friend class PluginExceptionsTableModelTest;
@@ -200,6 +206,12 @@ class PluginGroup {
// enabled one, or if all plugins are disabled, simply the first one.
void UpdateActivePlugin(const WebPluginInfo& plugin);
+ // Used by tests to override the default PluginList singleton.
+ NPAPI::PluginList* GetPluginList() const;
+ void set_plugin_list(NPAPI::PluginList* plugin_list) {
+ plugin_list_ = plugin_list;
+ }
+
static std::set<string16>* policy_disabled_plugin_patterns_;
std::string identifier_;
@@ -212,6 +224,7 @@ class PluginGroup {
scoped_ptr<Version> version_;
std::list<WebPluginInfo> web_plugin_infos_;
std::vector<int> web_plugin_positions_;
+ NPAPI::PluginList* plugin_list_;
};
#endif // WEBKIT_GLUE_PLUGINS_PLUGIN_GROUP_H_

Powered by Google App Engine
This is Rietveld 408576698