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

Side by Side Diff: chrome/browser/extensions/api/management/management_browsertest.cc

Issue 196663003: Introduce an extension parameter which is used to customize the extension. It's available for exter… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Modified test parameters Created 6 years, 9 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/bind.h" 5 #include "base/bind.h"
6 #include "base/bind_helpers.h" 6 #include "base/bind_helpers.h"
7 #include "base/memory/ref_counted.h" 7 #include "base/memory/ref_counted.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "base/prefs/scoped_user_pref_update.h" 9 #include "base/prefs/scoped_user_pref_update.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 418
419 extensions::PendingExtensionManager* pending_extension_manager = 419 extensions::PendingExtensionManager* pending_extension_manager =
420 service->pending_extension_manager(); 420 service->pending_extension_manager();
421 421
422 // The code that reads external_extensions.json uses this method to inform 422 // The code that reads external_extensions.json uses this method to inform
423 // the ExtensionService of an extension to download. Using the real code 423 // the ExtensionService of an extension to download. Using the real code
424 // is race-prone, because instantating the ExtensionService starts a read 424 // is race-prone, because instantating the ExtensionService starts a read
425 // of external_extensions.json before this test function starts. 425 // of external_extensions.json before this test function starts.
426 426
427 EXPECT_TRUE(pending_extension_manager->AddFromExternalUpdateUrl( 427 EXPECT_TRUE(pending_extension_manager->AddFromExternalUpdateUrl(
428 kExtensionId, GURL("http://localhost/autoupdate/manifest"), 428 kExtensionId,
429 Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS, false)); 429 std::string(),
430 GURL("http://localhost/autoupdate/manifest"),
431 Manifest::EXTERNAL_PREF_DOWNLOAD,
432 Extension::NO_FLAGS,
433 false));
430 434
431 // Run autoupdate and make sure version 2 of the extension was installed. 435 // Run autoupdate and make sure version 2 of the extension was installed.
432 service->updater()->CheckNow(params); 436 service->updater()->CheckNow(params);
433 ASSERT_TRUE(WaitForExtensionInstall()); 437 ASSERT_TRUE(WaitForExtensionInstall());
434 ASSERT_EQ(size_before + 1, registry->enabled_extensions().size()); 438 ASSERT_EQ(size_before + 1, registry->enabled_extensions().size());
435 const Extension* extension = service->GetExtensionById(kExtensionId, false); 439 const Extension* extension = service->GetExtensionById(kExtensionId, false);
436 ASSERT_TRUE(extension); 440 ASSERT_TRUE(extension);
437 ASSERT_EQ("2.0", extension->VersionString()); 441 ASSERT_EQ("2.0", extension->VersionString());
438 442
439 // Uninstalling the extension should set a pref that keeps the extension from 443 // Uninstalling the extension should set a pref that keeps the extension from
440 // being installed again the next time external_extensions.json is read. 444 // being installed again the next time external_extensions.json is read.
441 445
442 UninstallExtension(kExtensionId); 446 UninstallExtension(kExtensionId);
443 447
444 extensions::ExtensionPrefs* extension_prefs = 448 extensions::ExtensionPrefs* extension_prefs =
445 extensions::ExtensionPrefs::Get(browser()->profile()); 449 extensions::ExtensionPrefs::Get(browser()->profile());
446 EXPECT_TRUE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId)) 450 EXPECT_TRUE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId))
447 << "Uninstalling should set kill bit on externaly installed extension."; 451 << "Uninstalling should set kill bit on externaly installed extension.";
448 452
449 // Try to install the extension again from an external source. It should fail 453 // Try to install the extension again from an external source. It should fail
450 // because of the killbit. 454 // because of the killbit.
451 EXPECT_FALSE(pending_extension_manager->AddFromExternalUpdateUrl( 455 EXPECT_FALSE(pending_extension_manager->AddFromExternalUpdateUrl(
452 kExtensionId, GURL("http://localhost/autoupdate/manifest"), 456 kExtensionId,
453 Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS, false)); 457 std::string(),
458 GURL("http://localhost/autoupdate/manifest"),
459 Manifest::EXTERNAL_PREF_DOWNLOAD,
460 Extension::NO_FLAGS,
461 false));
454 EXPECT_FALSE(pending_extension_manager->IsIdPending(kExtensionId)) 462 EXPECT_FALSE(pending_extension_manager->IsIdPending(kExtensionId))
455 << "External reinstall of a killed extension shouldn't work."; 463 << "External reinstall of a killed extension shouldn't work.";
456 EXPECT_TRUE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId)) 464 EXPECT_TRUE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId))
457 << "External reinstall of a killed extension should leave it killed."; 465 << "External reinstall of a killed extension should leave it killed.";
458 466
459 // Installing from non-external source. 467 // Installing from non-external source.
460 ASSERT_TRUE(InstallExtension(basedir.AppendASCII("v2.crx"), 1)); 468 ASSERT_TRUE(InstallExtension(basedir.AppendASCII("v2.crx"), 1));
461 469
462 EXPECT_FALSE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId)) 470 EXPECT_FALSE(extension_prefs->IsExternalExtensionUninstalled(kExtensionId))
463 << "Reinstalling should clear the kill bit."; 471 << "Reinstalling should clear the kill bit.";
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
637 forcelist, kExtensionId, "http://localhost/autoupdate/manifest"); 645 forcelist, kExtensionId, "http://localhost/autoupdate/manifest");
638 } 646 }
639 ASSERT_TRUE(WaitForExtensionInstall()); 647 ASSERT_TRUE(WaitForExtensionInstall());
640 ASSERT_EQ(size_before + 1, registry->enabled_extensions().size()); 648 ASSERT_EQ(size_before + 1, registry->enabled_extensions().size());
641 extension = service->GetExtensionById(kExtensionId, false); 649 extension = service->GetExtensionById(kExtensionId, false);
642 ASSERT_TRUE(extension); 650 ASSERT_TRUE(extension);
643 EXPECT_EQ(Manifest::EXTERNAL_POLICY_DOWNLOAD, extension->location()); 651 EXPECT_EQ(Manifest::EXTERNAL_POLICY_DOWNLOAD, extension->location());
644 EXPECT_TRUE(service->IsExtensionEnabled(kExtensionId)); 652 EXPECT_TRUE(service->IsExtensionEnabled(kExtensionId));
645 EXPECT_TRUE(registry->disabled_extensions().is_empty()); 653 EXPECT_TRUE(registry->disabled_extensions().is_empty());
646 } 654 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698