| Index: chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc
|
| diff --git a/chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc b/chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc
|
| index e85c9d6d0c6cab7e93929acc1e9dce848cacb5e9..3c9c0327b4b2ee789459e571e173e49ffa8179a6 100644
|
| --- a/chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc
|
| +++ b/chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc
|
| @@ -8,10 +8,12 @@
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/values.h"
|
| #include "chrome/common/chrome_switches.h"
|
| +#include "chrome/common/extensions/background_info.h"
|
| #include "chrome/common/extensions/extension.h"
|
| #include "chrome/common/extensions/extension_manifest_constants.h"
|
| #include "chrome/common/extensions/features/base_feature_provider.h"
|
| #include "chrome/common/extensions/features/feature.h"
|
| +#include "chrome/common/extensions/manifest_handler.h"
|
| #include "extensions/common/error_utils.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| @@ -20,12 +22,19 @@ namespace keys = extension_manifest_keys;
|
|
|
| namespace extensions {
|
|
|
| -TEST_F(ExtensionManifestTest, BackgroundPermission) {
|
| +class ExtensionManifestBackgroundTest : public ExtensionManifestTest {
|
| + virtual void SetUp() OVERRIDE {
|
| + ExtensionManifestTest::SetUp();
|
| + (new BackgroundManifestHandler)->Register();
|
| + }
|
| +};
|
| +
|
| +TEST_F(ExtensionManifestBackgroundTest, BackgroundPermission) {
|
| LoadAndExpectError("background_permission.json",
|
| errors::kBackgroundPermissionNeeded);
|
| }
|
|
|
| -TEST_F(ExtensionManifestTest, BackgroundScripts) {
|
| +TEST_F(ExtensionManifestBackgroundTest, BackgroundScripts) {
|
| std::string error;
|
| scoped_ptr<base::DictionaryValue> manifest(
|
| LoadManifest("background_scripts.json", &error));
|
| @@ -34,26 +43,28 @@ TEST_F(ExtensionManifestTest, BackgroundScripts) {
|
| scoped_refptr<Extension> extension(
|
| LoadAndExpectSuccess(Manifest(manifest.get(), "")));
|
| ASSERT_TRUE(extension);
|
| - EXPECT_EQ(2u, extension->background_scripts().size());
|
| - EXPECT_EQ("foo.js", extension->background_scripts()[0u]);
|
| - EXPECT_EQ("bar/baz.js", extension->background_scripts()[1u]);
|
| + const std::vector<std::string>& background_scripts =
|
| + BackgroundInfo::GetBackgroundScripts(extension);
|
| + ASSERT_EQ(2u, background_scripts.size());
|
| + EXPECT_EQ("foo.js", background_scripts[0u]);
|
| + EXPECT_EQ("bar/baz.js", background_scripts[1u]);
|
|
|
| - EXPECT_TRUE(extension->has_background_page());
|
| + EXPECT_TRUE(BackgroundInfo::HasBackgroundPage(extension));
|
| EXPECT_EQ(std::string("/") +
|
| extension_filenames::kGeneratedBackgroundPageFilename,
|
| - extension->GetBackgroundURL().path());
|
| + BackgroundInfo::GetBackgroundURL(extension).path());
|
|
|
| manifest->SetString("background_page", "monkey.html");
|
| LoadAndExpectError(Manifest(manifest.get(), ""),
|
| errors::kInvalidBackgroundCombination);
|
| }
|
|
|
| -TEST_F(ExtensionManifestTest, BackgroundPage) {
|
| +TEST_F(ExtensionManifestBackgroundTest, BackgroundPage) {
|
| scoped_refptr<Extension> extension(
|
| LoadAndExpectSuccess("background_page.json"));
|
| ASSERT_TRUE(extension);
|
| - EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path());
|
| - EXPECT_TRUE(extension->allow_background_js_access());
|
| + EXPECT_EQ("/foo.html", BackgroundInfo::GetBackgroundURL(extension).path());
|
| + EXPECT_TRUE(BackgroundInfo::AllowJSAccess(extension));
|
|
|
| std::string error;
|
| scoped_ptr<base::DictionaryValue> manifest(
|
| @@ -61,7 +72,7 @@ TEST_F(ExtensionManifestTest, BackgroundPage) {
|
| ASSERT_TRUE(manifest.get());
|
| extension = LoadAndExpectSuccess(Manifest(manifest.get(), ""));
|
| ASSERT_TRUE(extension);
|
| - EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path());
|
| + EXPECT_EQ("/foo.html", BackgroundInfo::GetBackgroundURL(extension).path());
|
|
|
| manifest->SetInteger(keys::kManifestVersion, 2);
|
| LoadAndExpectWarning(
|
| @@ -69,18 +80,18 @@ TEST_F(ExtensionManifestTest, BackgroundPage) {
|
| "'background_page' requires manifest version of 1 or lower.");
|
| }
|
|
|
| -TEST_F(ExtensionManifestTest, BackgroundAllowNoJsAccess) {
|
| +TEST_F(ExtensionManifestBackgroundTest, BackgroundAllowNoJsAccess) {
|
| scoped_refptr<Extension> extension;
|
| extension = LoadAndExpectSuccess("background_allow_no_js_access.json");
|
| ASSERT_TRUE(extension);
|
| - EXPECT_FALSE(extension->allow_background_js_access());
|
| + EXPECT_FALSE(BackgroundInfo::AllowJSAccess(extension));
|
|
|
| extension = LoadAndExpectSuccess("background_allow_no_js_access2.json");
|
| ASSERT_TRUE(extension);
|
| - EXPECT_FALSE(extension->allow_background_js_access());
|
| + EXPECT_FALSE(BackgroundInfo::AllowJSAccess(extension));
|
| }
|
|
|
| -TEST_F(ExtensionManifestTest, BackgroundPageWebRequest) {
|
| +TEST_F(ExtensionManifestBackgroundTest, BackgroundPageWebRequest) {
|
| CommandLine::ForCurrentProcess()->AppendSwitch(
|
| switches::kEnableExperimentalExtensionApis);
|
| Feature::ScopedCurrentChannel current_channel(
|
| @@ -95,7 +106,7 @@ TEST_F(ExtensionManifestTest, BackgroundPageWebRequest) {
|
| scoped_refptr<Extension> extension(
|
| LoadAndExpectSuccess(Manifest(manifest.get(), "")));
|
| ASSERT_TRUE(extension);
|
| - EXPECT_TRUE(extension->has_lazy_background_page());
|
| + EXPECT_TRUE(BackgroundInfo::HasLazyBackgroundPage(extension));
|
|
|
| base::ListValue* permissions = new base::ListValue();
|
| permissions->Append(new base::StringValue("webRequest"));
|
|
|