Chromium Code Reviews| Index: chrome/common/extensions/api/extension_action/browser_action_manifest_unittest.cc |
| diff --git a/chrome/common/extensions/manifest_tests/extension_manifests_browseraction_unittest.cc b/chrome/common/extensions/api/extension_action/browser_action_manifest_unittest.cc |
| similarity index 67% |
| rename from chrome/common/extensions/manifest_tests/extension_manifests_browseraction_unittest.cc |
| rename to chrome/common/extensions/api/extension_action/browser_action_manifest_unittest.cc |
| index d6e9fb7277a96d6a3d64ad1edf159888ad7d7d9b..eb4ab61e38316e8830459aba9ebaded7766e41c9 100644 |
| --- a/chrome/common/extensions/manifest_tests/extension_manifests_browseraction_unittest.cc |
| +++ b/chrome/common/extensions/api/extension_action/browser_action_manifest_unittest.cc |
| @@ -2,9 +2,12 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| +#include "chrome/common/extensions/api/extension_action/action_info.h" |
| +#include "chrome/common/extensions/api/extension_action/browser_action_handler.h" |
| #include "chrome/common/extensions/extension_builder.h" |
| #include "chrome/common/extensions/extension_icon_set.h" |
| #include "chrome/common/extensions/extension_manifest_constants.h" |
| +#include "chrome/common/extensions/manifest_handler.h" |
| #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" |
| #include "chrome/common/extensions/value_builder.h" |
| #include "extensions/common/error_utils.h" |
| @@ -15,7 +18,16 @@ namespace errors = extension_manifest_errors; |
| namespace extensions { |
| namespace { |
| -TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_NoDefaultIcons) { |
| +class BrowserActionManifestTest : public ExtensionManifestTest { |
| + protected: |
| + virtual void SetUp() OVERRIDE { |
|
Yoyo Zhou
2012/12/21 23:50:59
This should call the superclass SetUp also (even i
Devlin
2012/12/27 20:36:46
Done.
|
| + ManifestHandler::Register(extension_manifest_keys::kBrowserAction, |
| + new BrowserActionHandler); |
| + } |
| +}; |
| + |
| +TEST_F(BrowserActionManifestTest, |
| + BrowserActionManifestIcons_NoDefaultIcons) { |
| scoped_refptr<const Extension> extension = |
| ExtensionBuilder() |
| .SetManifest(DictionaryBuilder() |
| @@ -27,12 +39,14 @@ TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_NoDefaultIcons) { |
| .Build(); |
| ASSERT_TRUE(extension.get()); |
| - ASSERT_TRUE(extension->browser_action_info()); |
| - EXPECT_TRUE(extension->browser_action_info()->default_icon.empty()); |
| + const ActionInfo* browser_action_info = |
| + BrowserActionInfo::GetBrowserAction(extension); |
| + ASSERT_TRUE(browser_action_info); |
| + EXPECT_TRUE(browser_action_info->default_icon.empty()); |
| } |
| - |
| -TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_StringDefaultIcon) { |
| +TEST_F(BrowserActionManifestTest, |
| + BrowserActionManifestIcons_StringDefaultIcon) { |
| scoped_refptr<const Extension> extension = |
| ExtensionBuilder() |
| .SetManifest(DictionaryBuilder() |
| @@ -44,17 +58,19 @@ TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_StringDefaultIcon) { |
| .Build(); |
| ASSERT_TRUE(extension.get()); |
| - ASSERT_TRUE(extension->browser_action_info()); |
| - ASSERT_FALSE(extension->browser_action_info()->default_icon.empty()); |
| + const ActionInfo* browser_action_info = |
| + BrowserActionInfo::GetBrowserAction(extension); |
| + ASSERT_TRUE(browser_action_info); |
| + ASSERT_FALSE(browser_action_info->default_icon.empty()); |
| - const ExtensionIconSet& icons = |
| - extension->browser_action_info()->default_icon; |
| + const ExtensionIconSet& icons = browser_action_info->default_icon; |
| EXPECT_EQ(1u, icons.map().size()); |
| EXPECT_EQ("icon.png", icons.Get(19, ExtensionIconSet::MATCH_EXACTLY)); |
| } |
| -TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_DictDefaultIcon) { |
| +TEST_F(BrowserActionManifestTest, |
| + BrowserActionManifestIcons_DictDefaultIcon) { |
| scoped_refptr<const Extension> extension = |
| ExtensionBuilder() |
| .SetManifest(DictionaryBuilder() |
| @@ -69,11 +85,12 @@ TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_DictDefaultIcon) { |
| .Build(); |
| ASSERT_TRUE(extension.get()); |
| - ASSERT_TRUE(extension->browser_action_info()); |
| - ASSERT_FALSE(extension->browser_action_info()->default_icon.empty()); |
| + const ActionInfo* browser_action_info = |
| + BrowserActionInfo::GetBrowserAction(extension); |
| + ASSERT_TRUE(browser_action_info); |
| + ASSERT_FALSE(browser_action_info->default_icon.empty()); |
| - const ExtensionIconSet& icons = |
| - extension->browser_action_info()->default_icon; |
| + const ExtensionIconSet& icons = browser_action_info->default_icon; |
| // 24px icon should be ignored. |
| EXPECT_EQ(2u, icons.map().size()); |
| @@ -81,7 +98,8 @@ TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_DictDefaultIcon) { |
| EXPECT_EQ("icon38.png", icons.Get(38, ExtensionIconSet::MATCH_EXACTLY)); |
| } |
| -TEST_F(ExtensionManifestTest, BrowserActionManifestIcons_InvalidDefaultIcon) { |
| +TEST_F(BrowserActionManifestTest, |
| + BrowserActionManifestIcons_InvalidDefaultIcon) { |
| scoped_ptr<DictionaryValue> manifest_value = DictionaryBuilder() |
| .Set("name", "Invalid default icon") |
| .Set("version", "1.0.0") |