OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/chromeos/power/renderer_freezer.h" | 5 #include "chrome/browser/chromeos/power/renderer_freezer.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 } | 305 } |
306 | 306 |
307 // Tests that the RendererFreezer does not freeze renderers that are hosting | 307 // Tests that the RendererFreezer does not freeze renderers that are hosting |
308 // extensions that use GCM. | 308 // extensions that use GCM. |
309 TEST_F(RendererFreezerTestWithExtensions, DoesNotFreezeGcmExtensionRenderers) { | 309 TEST_F(RendererFreezerTestWithExtensions, DoesNotFreezeGcmExtensionRenderers) { |
310 Init(); | 310 Init(); |
311 | 311 |
312 // First build the GCM extension. | 312 // First build the GCM extension. |
313 scoped_refptr<extensions::Extension> gcm_app = | 313 scoped_refptr<extensions::Extension> gcm_app = |
314 extensions::ExtensionBuilder() | 314 extensions::ExtensionBuilder() |
315 .SetManifest(std::move( | 315 .SetManifest( |
316 extensions::DictionaryBuilder() | 316 extensions::DictionaryBuilder() |
317 .Set("name", "GCM App") | 317 .Set("name", "GCM App") |
318 .Set("version", "1.0.0") | 318 .Set("version", "1.0.0") |
319 .Set("manifest_version", 2) | 319 .Set("manifest_version", 2) |
320 .Set("app", | 320 .Set("app", |
321 std::move(extensions::DictionaryBuilder().Set( | 321 extensions::DictionaryBuilder() |
322 "background", | 322 .Set("background", |
323 std::move(extensions::DictionaryBuilder().Set( | 323 extensions::DictionaryBuilder() |
324 "scripts", | 324 .Set("scripts", extensions::ListBuilder() |
325 std::move(extensions::ListBuilder().Append( | 325 .Append("background.js") |
326 "background.js"))))))) | 326 .Build()) |
| 327 .Build()) |
| 328 .Build()) |
327 .Set("permissions", | 329 .Set("permissions", |
328 std::move(extensions::ListBuilder().Append("gcm"))))) | 330 extensions::ListBuilder().Append("gcm").Build()) |
| 331 .Build()) |
329 .Build(); | 332 .Build(); |
330 | 333 |
331 // Now install it and give it a renderer. | 334 // Now install it and give it a renderer. |
332 extensions::ExtensionSystem::Get(profile_) | 335 extensions::ExtensionSystem::Get(profile_) |
333 ->extension_service() | 336 ->extension_service() |
334 ->AddExtension(gcm_app.get()); | 337 ->AddExtension(gcm_app.get()); |
335 CreateRenderProcessForExtension(gcm_app.get()); | 338 CreateRenderProcessForExtension(gcm_app.get()); |
336 | 339 |
337 EXPECT_EQ(kSetShouldNotFreezeRenderer, test_delegate_->GetActions()); | 340 EXPECT_EQ(kSetShouldNotFreezeRenderer, test_delegate_->GetActions()); |
338 } | 341 } |
339 | 342 |
340 // Tests that the RendererFreezer freezes renderers that are hosting extensions | 343 // Tests that the RendererFreezer freezes renderers that are hosting extensions |
341 // that do not use GCM. | 344 // that do not use GCM. |
342 TEST_F(RendererFreezerTestWithExtensions, FreezesNonGcmExtensionRenderers) { | 345 TEST_F(RendererFreezerTestWithExtensions, FreezesNonGcmExtensionRenderers) { |
343 Init(); | 346 Init(); |
344 | 347 |
345 // First build the extension. | 348 // First build the extension. |
346 scoped_refptr<extensions::Extension> background_app = | 349 scoped_refptr<extensions::Extension> background_app = |
347 extensions::ExtensionBuilder() | 350 extensions::ExtensionBuilder() |
348 .SetManifest(std::move( | 351 .SetManifest( |
349 extensions::DictionaryBuilder() | 352 extensions::DictionaryBuilder() |
350 .Set("name", "Background App") | 353 .Set("name", "Background App") |
351 .Set("version", "1.0.0") | 354 .Set("version", "1.0.0") |
352 .Set("manifest_version", 2) | 355 .Set("manifest_version", 2) |
353 .Set("app", | 356 .Set("app", |
354 std::move(extensions::DictionaryBuilder().Set( | 357 extensions::DictionaryBuilder() |
355 "background", | 358 .Set("background", |
356 std::move(extensions::DictionaryBuilder().Set( | 359 extensions::DictionaryBuilder() |
357 "scripts", | 360 .Set("scripts", extensions::ListBuilder() |
358 std::move(extensions::ListBuilder().Append( | 361 .Append("background.js") |
359 "background.js"))))))))) | 362 .Build()) |
| 363 .Build()) |
| 364 .Build()) |
| 365 .Build()) |
360 .Build(); | 366 .Build(); |
361 | 367 |
362 // Now install it and give it a renderer. | 368 // Now install it and give it a renderer. |
363 extensions::ExtensionSystem::Get(profile_) | 369 extensions::ExtensionSystem::Get(profile_) |
364 ->extension_service() | 370 ->extension_service() |
365 ->AddExtension(background_app.get()); | 371 ->AddExtension(background_app.get()); |
366 CreateRenderProcessForExtension(background_app.get()); | 372 CreateRenderProcessForExtension(background_app.get()); |
367 | 373 |
368 EXPECT_EQ(kSetShouldFreezeRenderer, test_delegate_->GetActions()); | 374 EXPECT_EQ(kSetShouldFreezeRenderer, test_delegate_->GetActions()); |
369 } | 375 } |
370 | 376 |
371 } // namespace chromeos | 377 } // namespace chromeos |
OLD | NEW |