| Index: chrome/browser/extensions/extension_browsertest.cc
|
| diff --git a/chrome/browser/extensions/extension_browsertest.cc b/chrome/browser/extensions/extension_browsertest.cc
|
| index 31f0682048fe0ab972adf2ed96031ef0e3139362..efdbd0fb98e530cfb219c706371c17e3662aacae 100644
|
| --- a/chrome/browser/extensions/extension_browsertest.cc
|
| +++ b/chrome/browser/extensions/extension_browsertest.cc
|
| @@ -71,8 +71,8 @@ void ExtensionBrowserTest::SetUpCommandLine(CommandLine* command_line) {
|
| #endif
|
| }
|
|
|
| -const Extension* ExtensionBrowserTest::LoadExtensionWithOptions(
|
| - const FilePath& path, bool incognito_enabled, bool fileaccess_enabled) {
|
| +const Extension* ExtensionBrowserTest::LoadExtensionWithFlags(
|
| + const FilePath& path, int flags) {
|
| ExtensionService* service = browser()->profile()->GetExtensionService();
|
| {
|
| content::NotificationRegistrar registrar;
|
| @@ -100,6 +100,25 @@ const Extension* ExtensionBrowserTest::LoadExtensionWithOptions(
|
| if (!extension)
|
| return NULL;
|
|
|
| + if (!(flags & kFlagIgnoreManifestWarnings)) {
|
| + const Extension::InstallWarningVector& install_warnings =
|
| + extension->install_warnings();
|
| + if (!install_warnings.empty()) {
|
| + std::string install_warnings_message = StringPrintf(
|
| + "Unexpected warnings when loading test extension %s:\n",
|
| + path.AsUTF8Unsafe().c_str());
|
| +
|
| + for (Extension::InstallWarningVector::const_iterator it =
|
| + install_warnings.begin(); it != install_warnings.end(); ++it) {
|
| + install_warnings_message += " " + it->message + "\n";
|
| + }
|
| +
|
| + EXPECT_TRUE(extension->install_warnings().empty()) <<
|
| + install_warnings_message;
|
| + return NULL;
|
| + }
|
| + }
|
| +
|
| const std::string extension_id = extension->id();
|
|
|
| // The call to OnExtensionInstalled ensures the other extension prefs
|
| @@ -118,8 +137,8 @@ const Extension* ExtensionBrowserTest::LoadExtensionWithOptions(
|
| content::Source<Profile>(browser()->profile()));
|
| CHECK(!service->IsIncognitoEnabled(extension_id));
|
|
|
| - if (incognito_enabled) {
|
| - service->SetIsIncognitoEnabled(extension_id, incognito_enabled);
|
| + if (flags & kFlagEnableIncognito) {
|
| + service->SetIsIncognitoEnabled(extension_id, true);
|
| load_signal.Wait();
|
| extension = service->GetExtensionById(extension_id, false);
|
| CHECK(extension) << extension_id << " not found after reloading.";
|
| @@ -131,8 +150,8 @@ const Extension* ExtensionBrowserTest::LoadExtensionWithOptions(
|
| chrome::NOTIFICATION_EXTENSION_LOADED,
|
| content::Source<Profile>(browser()->profile()));
|
| CHECK(service->AllowFileAccess(extension));
|
| - if (!fileaccess_enabled) {
|
| - service->SetAllowFileAccess(extension, fileaccess_enabled);
|
| + if (!(flags & kFlagEnableFileAccess)) {
|
| + service->SetAllowFileAccess(extension, false);
|
| load_signal.Wait();
|
| extension = service->GetExtensionById(extension_id, false);
|
| CHECK(extension) << extension_id << " not found after reloading.";
|
| @@ -146,12 +165,13 @@ const Extension* ExtensionBrowserTest::LoadExtensionWithOptions(
|
| }
|
|
|
| const Extension* ExtensionBrowserTest::LoadExtension(const FilePath& path) {
|
| - return LoadExtensionWithOptions(path, false, true);
|
| + return LoadExtensionWithFlags(path, kFlagEnableFileAccess);
|
| }
|
|
|
| const Extension* ExtensionBrowserTest::LoadExtensionIncognito(
|
| const FilePath& path) {
|
| - return LoadExtensionWithOptions(path, true, true);
|
| + return LoadExtensionWithFlags(path,
|
| + kFlagEnableFileAccess | kFlagEnableIncognito);
|
| }
|
|
|
| const Extension* ExtensionBrowserTest::LoadExtensionAsComponent(
|
|
|