| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/strings/string_piece.h" | 6 #include "base/strings/string_piece.h" |
| 7 #include "base/strings/stringprintf.h" | 7 #include "base/strings/stringprintf.h" |
| 8 #include "chrome/browser/ui/browser.h" | 8 #include "chrome/browser/ui/browser.h" |
| 9 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 9 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| 10 #include "chrome/common/chrome_switches.h" | 10 #include "chrome/common/chrome_switches.h" |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 218 " width='400' height='500'" | 218 " width='400' height='500'" |
| 219 " poster='snapshot1x.png 1x, snapshot2x.png 2x'></embed>"); | 219 " poster='snapshot1x.png 1x, snapshot2x.png 2x'></embed>"); |
| 220 | 220 |
| 221 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_src")); | 221 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_src")); |
| 222 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_srcset")); | 222 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_srcset")); |
| 223 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_legacy_syntax")); | 223 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_legacy_syntax")); |
| 224 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_embed_src")); | 224 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_embed_src")); |
| 225 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_embed_srcset")); | 225 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin_embed_srcset")); |
| 226 } | 226 } |
| 227 | 227 |
| 228 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, LargePostersNotThrottled) { |
| 229 // This test verifies that small posters are throttled, large posters are not, |
| 230 // and that large posters can whitelist origins for other plugins. |
| 231 LoadHTML( |
| 232 "<object id='poster_small' data='http://a.com/fake.swf' " |
| 233 " type='application/x-ppapi-tests' width='50' height='50' " |
| 234 " poster='click_me.png'></object>" |
| 235 "<object id='poster_whitelisted_origin' data='http://b.com/fake.swf' " |
| 236 " type='application/x-ppapi-tests' width='50' height='50' " |
| 237 " poster='click_me.png'></object>" |
| 238 "<object id='plugin_whitelisted_origin' data='http://b.com/fake.swf' " |
| 239 " type='application/x-ppapi-tests' width='50' height='50'></object>" |
| 240 "<br>" |
| 241 "<object id='poster_large' data='http://b.com/fake.swf' " |
| 242 " type='application/x-ppapi-tests' width='400' height='300' " |
| 243 " poster='click_me.png'></object>"); |
| 244 |
| 245 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "poster_small")); |
| 246 VerifyPluginMarkedEssential(GetActiveWebContents(), |
| 247 "plugin_whitelisted_origin"); |
| 248 VerifyPluginMarkedEssential(GetActiveWebContents(), "poster_large"); |
| 249 } |
| 250 |
| 228 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, | 251 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, |
| 229 PluginMarkedEssentialAfterPosterClicked) { | 252 PluginMarkedEssentialAfterPosterClicked) { |
| 230 LoadHTML( | 253 LoadHTML( |
| 231 "<object id='plugin' type='application/x-ppapi-tests' " | 254 "<object id='plugin' type='application/x-ppapi-tests' " |
| 232 " width='400' height='100' poster='snapshot1x.png'></object>"); | 255 " width='400' height='100' poster='snapshot1x.png'></object>"); |
| 233 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin")); | 256 EXPECT_FALSE(PluginLoaded(GetActiveWebContents(), "plugin")); |
| 234 | 257 |
| 235 SimulateClickAndAwaitMarkedEssential("plugin", gfx::Point(50, 50)); | 258 SimulateClickAndAwaitMarkedEssential("plugin", gfx::Point(50, 50)); |
| 236 } | 259 } |
| 237 | 260 |
| 238 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, OriginWhitelisting) { | 261 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, OriginWhitelisting) { |
| 239 LoadHTML( | 262 LoadHTML( |
| 240 "<object id='plugin1' data='http://otherorigin.com/fake1.swf' " | 263 "<object id='plugin_small' data='http://a.com/fake1.swf' " |
| 241 " type='application/x-ppapi-tests' width='400' height='100'></object>" | 264 " type='application/x-ppapi-tests' width='100' height='100'></object>" |
| 242 "<object id='plugin2' data='http://otherorigin.com/fake2.swf' " | 265 "<object id='plugin_small_poster' data='http://a.com/fake1.swf' " |
| 266 " type='application/x-ppapi-tests' width='100' height='100' " |
| 267 " poster='click_me.png'></object>" |
| 268 "<object id='plugin_large' data='http://a.com/fake2.swf' " |
| 243 " type='application/x-ppapi-tests' width='400' height='500'>" | 269 " type='application/x-ppapi-tests' width='400' height='500'>" |
| 244 "</object>"); | 270 "</object>"); |
| 245 VerifyPluginMarkedEssential(GetActiveWebContents(), "plugin1"); | 271 VerifyPluginMarkedEssential(GetActiveWebContents(), "plugin_small"); |
| 246 VerifyPluginMarkedEssential(GetActiveWebContents(), "plugin2"); | 272 VerifyPluginMarkedEssential(GetActiveWebContents(), "plugin_small_poster"); |
| 273 VerifyPluginMarkedEssential(GetActiveWebContents(), "plugin_large"); |
| 247 } | 274 } |
| 248 | 275 |
| 249 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, LargeCrossOriginObscured) { | 276 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, LargeCrossOriginObscured) { |
| 250 LoadHTML( | 277 LoadHTML( |
| 251 "<div id='container' " | 278 "<div id='container' " |
| 252 " style='width: 400px; height: 100px; overflow: hidden;'>" | 279 " style='width: 400px; height: 100px; overflow: hidden;'>" |
| 253 " <object id='plugin' data='http://otherorigin.com/fake.swf' " | 280 " <object id='plugin' data='http://otherorigin.com/fake.swf' " |
| 254 " type='application/x-ppapi-tests' width='400' height='500'>" | 281 " type='application/x-ppapi-tests' width='400' height='500'>" |
| 255 " </object>" | 282 " </object>" |
| 256 "</div>"); | 283 "</div>"); |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 305 | 332 |
| 306 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, ZoomIndependent) { | 333 IN_PROC_BROWSER_TEST_F(PluginPowerSaverBrowserTest, ZoomIndependent) { |
| 307 ui_zoom::ZoomController::FromWebContents(GetActiveWebContents()) | 334 ui_zoom::ZoomController::FromWebContents(GetActiveWebContents()) |
| 308 ->SetZoomLevel(4.0); | 335 ->SetZoomLevel(4.0); |
| 309 LoadHTML( | 336 LoadHTML( |
| 310 "<object id='plugin' data='http://otherorigin.com/fake.swf' " | 337 "<object id='plugin' data='http://otherorigin.com/fake.swf' " |
| 311 " type='application/x-ppapi-tests' width='400' height='200'>" | 338 " type='application/x-ppapi-tests' width='400' height='200'>" |
| 312 "</object>"); | 339 "</object>"); |
| 313 VerifyPluginIsThrottled(GetActiveWebContents(), "plugin"); | 340 VerifyPluginIsThrottled(GetActiveWebContents(), "plugin"); |
| 314 } | 341 } |
| OLD | NEW |