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

Side by Side Diff: webkit/plugins/npapi/plugin_group_unittest.cc

Issue 5699005: Policy: Re-enabled plugin still disabled (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added empty group prunning. Created 9 years, 11 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "webkit/plugins/npapi/plugin_group.h" 5 #include "webkit/plugins/npapi/plugin_group.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/scoped_ptr.h" 10 #include "base/scoped_ptr.h"
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 plugindefs[i])); 131 plugindefs[i]));
132 EXPECT_TRUE(group->Match(plugin3043)); 132 EXPECT_TRUE(group->Match(plugin3043));
133 group->AddPlugin(plugin3043, 0); 133 group->AddPlugin(plugin3043, 0);
134 EXPECT_EQ(desc3043, group->description()); 134 EXPECT_EQ(desc3043, group->description());
135 EXPECT_TRUE(group->IsVulnerable()); 135 EXPECT_TRUE(group->IsVulnerable());
136 EXPECT_TRUE(group->Match(plugin3045)); 136 EXPECT_TRUE(group->Match(plugin3045));
137 group->AddPlugin(plugin3045, 1); 137 group->AddPlugin(plugin3045, 1);
138 EXPECT_EQ(desc3043, group->description()); 138 EXPECT_EQ(desc3043, group->description());
139 EXPECT_TRUE(group->IsVulnerable()); 139 EXPECT_TRUE(group->IsVulnerable());
140 } 140 }
141
142 { 141 {
143 // Disable the first plugin. 142 // Disable the second plugin.
144 plugin3043.enabled = false; 143 plugin3045.enabled =
144 webkit::npapi::WebPluginInfo::USER_DISABLED_POLICY_UNMANAGED;
145 scoped_ptr<PluginGroup> group(PluginGroupTest::CreatePluginGroup( 145 scoped_ptr<PluginGroup> group(PluginGroupTest::CreatePluginGroup(
146 plugindefs[i])); 146 plugindefs[i]));
147 EXPECT_TRUE(group->Match(plugin3043)); 147 EXPECT_TRUE(group->Match(plugin3043));
148 group->AddPlugin(plugin3043, 0);
149 EXPECT_EQ(desc3043, group->description());
150 EXPECT_TRUE(group->IsVulnerable());
151 EXPECT_FALSE(group->Enabled());
152 EXPECT_TRUE(group->Match(plugin3045));
153 group->AddPlugin(plugin3045, 1);
154 EXPECT_EQ(desc3045, group->description());
155 EXPECT_FALSE(group->IsVulnerable());
156 }
157
158 {
159 // Disable the second plugin.
160 plugin3045.enabled = false;
161 scoped_ptr<PluginGroup> group(PluginGroupTest::CreatePluginGroup(
162 plugindefs[i]));
163 EXPECT_TRUE(group->Match(plugin3043));
164 group->AddPlugin(plugin3043, 1); 148 group->AddPlugin(plugin3043, 1);
165 EXPECT_EQ(desc3043, group->description()); 149 EXPECT_EQ(desc3043, group->description());
166 EXPECT_TRUE(group->IsVulnerable()); 150 EXPECT_TRUE(group->IsVulnerable());
167 EXPECT_TRUE(group->Match(plugin3045)); 151 EXPECT_TRUE(group->Match(plugin3045));
168 group->AddPlugin(plugin3045, 0); 152 group->AddPlugin(plugin3045, 0);
169 EXPECT_EQ(desc3043, group->description()); 153 EXPECT_EQ(desc3043, group->description());
170 EXPECT_TRUE(group->IsVulnerable()); 154 EXPECT_TRUE(group->IsVulnerable());
171 } 155 }
172 } 156 }
173 } 157 }
174 158
175 TEST(PluginGroupTest, PluginGroupDefinition) { 159 TEST(PluginGroupTest, PluginGroupDefinition) {
176 const PluginGroupDefinition* definitions = 160 const PluginGroupDefinition* definitions =
177 PluginList::GetPluginGroupDefinitions(); 161 PluginList::GetPluginGroupDefinitions();
178 for (size_t i = 0; i < PluginList::GetPluginGroupDefinitionsSize(); ++i) { 162 for (size_t i = 0; i < PluginList::GetPluginGroupDefinitionsSize(); ++i) {
179 scoped_ptr<PluginGroup> def_group( 163 scoped_ptr<PluginGroup> def_group(
180 PluginGroupTest::CreatePluginGroup(definitions[i])); 164 PluginGroupTest::CreatePluginGroup(definitions[i]));
181 ASSERT_TRUE(def_group.get() != NULL); 165 ASSERT_TRUE(def_group.get() != NULL);
182 EXPECT_FALSE(def_group->Match(kPlugin2043)); 166 EXPECT_FALSE(def_group->Match(kPlugin2043));
183 } 167 }
184 } 168 }
185 169
186 TEST(PluginGroupTest, DisableOutdated) { 170 TEST(PluginGroupTest, DisableOutdated) {
187 PluginGroupDefinition plugindefs[] = { kPluginDef3, kPluginDef34 }; 171 PluginGroupDefinition plugindefs[] = { kPluginDef3, kPluginDef34 };
188 for (size_t i = 0; i < 2; ++i) { 172 for (size_t i = 0; i < 2; ++i) {
189 scoped_ptr<PluginGroup> group(PluginGroupTest::CreatePluginGroup( 173 scoped_ptr<PluginGroup> group(PluginGroupTest::CreatePluginGroup(
190 plugindefs[i])); 174 plugindefs[i]));
191 group->AddPlugin(kPlugin3043, 0); 175 group->AddPlugin(kPlugin3043, 0);
192 group->AddPlugin(kPlugin3045, 1); 176 group->AddPlugin(kPlugin3045, 1);
177
193 EXPECT_EQ(ASCIIToUTF16("MyPlugin version 3.0.43"), group->description()); 178 EXPECT_EQ(ASCIIToUTF16("MyPlugin version 3.0.43"), group->description());
194 EXPECT_TRUE(group->IsVulnerable()); 179 EXPECT_TRUE(group->IsVulnerable());
195 180
196 group->DisableOutdatedPlugins(); 181 group->DisableOutdatedPlugins();
197 EXPECT_EQ(ASCIIToUTF16("MyPlugin version 3.0.45"), group->description()); 182 EXPECT_EQ(ASCIIToUTF16("MyPlugin version 3.0.45"), group->description());
198 EXPECT_FALSE(group->IsVulnerable()); 183 EXPECT_FALSE(group->IsVulnerable());
199 } 184 }
200 } 185 }
201 186
202 TEST(PluginGroupTest, VersionExtraction) { 187 TEST(PluginGroupTest, VersionExtraction) {
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 WebPluginInfo silverlight_plugin(ASCIIToUTF16("Silverlight"), 257 WebPluginInfo silverlight_plugin(ASCIIToUTF16("Silverlight"),
273 FilePath(FILE_PATH_LITERAL("/silver.so")), 258 FilePath(FILE_PATH_LITERAL("/silver.so")),
274 ASCIIToUTF16("4.0.50917.0"), 259 ASCIIToUTF16("4.0.50917.0"),
275 ASCIIToUTF16("silverlight 4")); 260 ASCIIToUTF16("silverlight 4"));
276 group.reset(PluginGroupTest::CreatePluginGroup(silverlight_plugin_def)); 261 group.reset(PluginGroupTest::CreatePluginGroup(silverlight_plugin_def));
277 group->AddPlugin(silverlight_plugin, 0); 262 group->AddPlugin(silverlight_plugin, 0);
278 EXPECT_FALSE(PluginGroup(*group).IsVulnerable()); 263 EXPECT_FALSE(PluginGroup(*group).IsVulnerable());
279 } 264 }
280 } // namespace npapi 265 } // namespace npapi
281 } // namespace webkit 266 } // namespace webkit
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698