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

Unified Diff: chrome/browser/extensions/extension_service_test_with_install.cc

Issue 2524553002: [Extensions] Create ChromeTestExtensionLoader (Closed)
Patch Set: . Created 4 years, 1 month 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: chrome/browser/extensions/extension_service_test_with_install.cc
diff --git a/chrome/browser/extensions/extension_service_test_with_install.cc b/chrome/browser/extensions/extension_service_test_with_install.cc
index 83582c7713cfed47044dea25fab7447477d15c0b..e4706a1e569d6266cc58e8c0f015cae816ee39aa 100644
--- a/chrome/browser/extensions/extension_service_test_with_install.cc
+++ b/chrome/browser/extensions/extension_service_test_with_install.cc
@@ -6,9 +6,11 @@
#include "base/files/file_util.h"
#include "base/strings/utf_string_conversions.h"
+#include "chrome/browser/extensions/chrome_test_extension_loader.h"
#include "chrome/browser/extensions/crx_installer.h"
#include "chrome/browser/extensions/extension_creator.h"
#include "chrome/browser/extensions/extension_error_reporter.h"
+#include "chrome/browser/profiles/profile.h"
#include "content/public/browser/notification_service.h"
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/notification_types.h"
@@ -417,22 +419,18 @@ void ExtensionServiceTestWithInstall::InstallCRXInternal(
Manifest::Location install_location,
InstallState install_state,
int creation_flags) {
- EXPECT_TRUE(base::PathExists(crx_path)) << "Path does not exist: "
- << crx_path.value().c_str();
- // no client (silent install)
- scoped_refptr<CrxInstaller> installer(
- CrxInstaller::CreateSilent(service()));
- installer->set_install_source(install_location);
- installer->set_creation_flags(creation_flags);
- if (!(creation_flags & Extension::WAS_INSTALLED_BY_DEFAULT))
- installer->set_allow_silent_install(true);
-
- content::WindowedNotificationObserver observer(
- extensions::NOTIFICATION_CRX_INSTALLER_DONE,
- content::Source<extensions::CrxInstaller>(installer.get()));
-
- installer->InstallCrx(crx_path);
- observer.Wait();
+ ChromeTestExtensionLoader extension_loader(profile());
+ extension_loader.set_location(install_location);
+ extension_loader.set_creation_flags(creation_flags);
+ extension_loader.set_should_fail(install_state == INSTALL_FAILED);
+ // TODO(devlin): We shouldn't be granting permissions based on whether
+ // something was installed by default. That's weird.
+ extension_loader.set_grant_permissions(
+ (creation_flags & Extension::WAS_INSTALLED_BY_DEFAULT) == 0);
+ // TODO(devlin): We shouldn't ignore manifest warnings here, but we always
+ // did so a bunch of stuff fails. Migrate this over.
+ extension_loader.set_ignore_manifest_warnings(true);
+ extension_loader.LoadExtension(crx_path);
}
} // namespace extensions

Powered by Google App Engine
This is Rietveld 408576698