| Index: chrome/browser/extensions/extension_action_unittest.cc
|
| diff --git a/chrome/browser/extensions/extension_action_unittest.cc b/chrome/browser/extensions/extension_action_unittest.cc
|
| index 53bc3631b416817540956504edc515cfddacbdcd..17840da1eb9005c51424462f9ecfcda1492082fb 100644
|
| --- a/chrome/browser/extensions/extension_action_unittest.cc
|
| +++ b/chrome/browser/extensions/extension_action_unittest.cc
|
| @@ -5,114 +5,128 @@
|
| #include "base/message_loop/message_loop.h"
|
| #include "chrome/browser/extensions/extension_action.h"
|
| #include "chrome/common/extensions/api/extension_action/action_info.h"
|
| +#include "extensions/common/test_util.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "url/gurl.h"
|
|
|
| +namespace extensions {
|
| +
|
| namespace {
|
|
|
| -using extensions::ActionInfo;
|
| +scoped_ptr<ExtensionAction> CreateAction(ActionInfo::Type type,
|
| + const ActionInfo& action_info) {
|
| + scoped_refptr<const Extension> extension = test_util::CreateEmptyExtension();
|
| + return make_scoped_ptr(new ExtensionAction(*extension, type, action_info));
|
| +}
|
| +
|
| +} // namespace
|
|
|
| TEST(ExtensionActionTest, Title) {
|
| ActionInfo action_info;
|
| action_info.default_title = "Initial Title";
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, action_info);
|
| -
|
| - ASSERT_EQ("Initial Title", action.GetTitle(1));
|
| - action.SetTitle(ExtensionAction::kDefaultTabId, "foo");
|
| - ASSERT_EQ("foo", action.GetTitle(1));
|
| - ASSERT_EQ("foo", action.GetTitle(100));
|
| - action.SetTitle(100, "bar");
|
| - ASSERT_EQ("foo", action.GetTitle(1));
|
| - ASSERT_EQ("bar", action.GetTitle(100));
|
| - action.SetTitle(ExtensionAction::kDefaultTabId, "baz");
|
| - ASSERT_EQ("baz", action.GetTitle(1));
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_EQ("baz", action.GetTitle(100));
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, action_info);
|
| +
|
| + ASSERT_EQ("Initial Title", action->GetTitle(1));
|
| + action->SetTitle(ExtensionAction::kDefaultTabId, "foo");
|
| + ASSERT_EQ("foo", action->GetTitle(1));
|
| + ASSERT_EQ("foo", action->GetTitle(100));
|
| + action->SetTitle(100, "bar");
|
| + ASSERT_EQ("foo", action->GetTitle(1));
|
| + ASSERT_EQ("bar", action->GetTitle(100));
|
| + action->SetTitle(ExtensionAction::kDefaultTabId, "baz");
|
| + ASSERT_EQ("baz", action->GetTitle(1));
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_EQ("baz", action->GetTitle(100));
|
| }
|
|
|
| TEST(ExtensionActionTest, Visibility) {
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
|
| -
|
| - ASSERT_FALSE(action.GetIsVisible(1));
|
| - action.SetIsVisible(ExtensionAction::kDefaultTabId, true);
|
| - ASSERT_TRUE(action.GetIsVisible(1));
|
| - ASSERT_TRUE(action.GetIsVisible(100));
|
| -
|
| - action.SetIsVisible(ExtensionAction::kDefaultTabId, false);
|
| - ASSERT_FALSE(action.GetIsVisible(1));
|
| - ASSERT_FALSE(action.GetIsVisible(100));
|
| - action.SetIsVisible(100, true);
|
| - ASSERT_FALSE(action.GetIsVisible(1));
|
| - ASSERT_TRUE(action.GetIsVisible(100));
|
| -
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_FALSE(action.GetIsVisible(1));
|
| - ASSERT_FALSE(action.GetIsVisible(100));
|
| -
|
| - ExtensionAction browser_action(
|
| - std::string(), ActionInfo::TYPE_BROWSER, ActionInfo());
|
| - ASSERT_TRUE(browser_action.GetIsVisible(1));
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, ActionInfo());
|
| +
|
| + ASSERT_FALSE(action->GetIsVisible(1));
|
| + action->SetIsVisible(ExtensionAction::kDefaultTabId, true);
|
| + ASSERT_TRUE(action->GetIsVisible(1));
|
| + ASSERT_TRUE(action->GetIsVisible(100));
|
| +
|
| + action->SetIsVisible(ExtensionAction::kDefaultTabId, false);
|
| + ASSERT_FALSE(action->GetIsVisible(1));
|
| + ASSERT_FALSE(action->GetIsVisible(100));
|
| + action->SetIsVisible(100, true);
|
| + ASSERT_FALSE(action->GetIsVisible(1));
|
| + ASSERT_TRUE(action->GetIsVisible(100));
|
| +
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_FALSE(action->GetIsVisible(1));
|
| + ASSERT_FALSE(action->GetIsVisible(100));
|
| +
|
| + scoped_ptr<ExtensionAction> browser_action =
|
| + CreateAction(ActionInfo::TYPE_BROWSER, ActionInfo());
|
| + ASSERT_TRUE(browser_action->GetIsVisible(1));
|
| }
|
|
|
| TEST(ExtensionActionTest, Icon) {
|
| ActionInfo action_info;
|
| action_info.default_icon.Add(16, "icon16.png");
|
| - ExtensionAction page_action(
|
| - std::string(), ActionInfo::TYPE_PAGE, action_info);
|
| - ASSERT_TRUE(page_action.default_icon());
|
| + scoped_ptr<ExtensionAction> page_action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, action_info);
|
| + ASSERT_TRUE(page_action->default_icon());
|
| EXPECT_EQ("icon16.png",
|
| - page_action.default_icon()->Get(
|
| + page_action->default_icon()->Get(
|
| 16, ExtensionIconSet::MATCH_EXACTLY));
|
| EXPECT_EQ("",
|
| - page_action.default_icon()->Get(
|
| + page_action->default_icon()->Get(
|
| 17, ExtensionIconSet::MATCH_BIGGER));
|
| }
|
|
|
| TEST(ExtensionActionTest, Badge) {
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
|
| - ASSERT_EQ("", action.GetBadgeText(1));
|
| - action.SetBadgeText(ExtensionAction::kDefaultTabId, "foo");
|
| - ASSERT_EQ("foo", action.GetBadgeText(1));
|
| - ASSERT_EQ("foo", action.GetBadgeText(100));
|
| - action.SetBadgeText(100, "bar");
|
| - ASSERT_EQ("foo", action.GetBadgeText(1));
|
| - ASSERT_EQ("bar", action.GetBadgeText(100));
|
| - action.SetBadgeText(ExtensionAction::kDefaultTabId, "baz");
|
| - ASSERT_EQ("baz", action.GetBadgeText(1));
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_EQ("baz", action.GetBadgeText(100));
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, ActionInfo());
|
| + ASSERT_EQ("", action->GetBadgeText(1));
|
| + action->SetBadgeText(ExtensionAction::kDefaultTabId, "foo");
|
| + ASSERT_EQ("foo", action->GetBadgeText(1));
|
| + ASSERT_EQ("foo", action->GetBadgeText(100));
|
| + action->SetBadgeText(100, "bar");
|
| + ASSERT_EQ("foo", action->GetBadgeText(1));
|
| + ASSERT_EQ("bar", action->GetBadgeText(100));
|
| + action->SetBadgeText(ExtensionAction::kDefaultTabId, "baz");
|
| + ASSERT_EQ("baz", action->GetBadgeText(1));
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_EQ("baz", action->GetBadgeText(100));
|
| }
|
|
|
| TEST(ExtensionActionTest, BadgeTextColor) {
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
|
| - ASSERT_EQ(0x00000000u, action.GetBadgeTextColor(1));
|
| - action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFFFF0000u);
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1));
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(100));
|
| - action.SetBadgeTextColor(100, 0xFF00FF00);
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1));
|
| - ASSERT_EQ(0xFF00FF00u, action.GetBadgeTextColor(100));
|
| - action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFF0000FFu);
|
| - ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(1));
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(100));
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, ActionInfo());
|
| + ASSERT_EQ(0x00000000u, action->GetBadgeTextColor(1));
|
| + action->SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFFFF0000u);
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeTextColor(1));
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeTextColor(100));
|
| + action->SetBadgeTextColor(100, 0xFF00FF00);
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeTextColor(1));
|
| + ASSERT_EQ(0xFF00FF00u, action->GetBadgeTextColor(100));
|
| + action->SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFF0000FFu);
|
| + ASSERT_EQ(0xFF0000FFu, action->GetBadgeTextColor(1));
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_EQ(0xFF0000FFu, action->GetBadgeTextColor(100));
|
| }
|
|
|
| TEST(ExtensionActionTest, BadgeBackgroundColor) {
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
|
| - ASSERT_EQ(0x00000000u, action.GetBadgeBackgroundColor(1));
|
| - action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, ActionInfo());
|
| + ASSERT_EQ(0x00000000u, action->GetBadgeBackgroundColor(1));
|
| + action->SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
|
| 0xFFFF0000u);
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1));
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(100));
|
| - action.SetBadgeBackgroundColor(100, 0xFF00FF00);
|
| - ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1));
|
| - ASSERT_EQ(0xFF00FF00u, action.GetBadgeBackgroundColor(100));
|
| - action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeBackgroundColor(1));
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeBackgroundColor(100));
|
| + action->SetBadgeBackgroundColor(100, 0xFF00FF00);
|
| + ASSERT_EQ(0xFFFF0000u, action->GetBadgeBackgroundColor(1));
|
| + ASSERT_EQ(0xFF00FF00u, action->GetBadgeBackgroundColor(100));
|
| + action->SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
|
| 0xFF0000FFu);
|
| - ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(1));
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(100));
|
| + ASSERT_EQ(0xFF0000FFu, action->GetBadgeBackgroundColor(1));
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_EQ(0xFF0000FFu, action->GetBadgeBackgroundColor(100));
|
| }
|
|
|
| TEST(ExtensionActionTest, PopupUrl) {
|
| @@ -123,30 +137,31 @@ TEST(ExtensionActionTest, PopupUrl) {
|
|
|
| ActionInfo action_info;
|
| action_info.default_popup_url = url_foo;
|
| - ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, action_info);
|
| -
|
| - ASSERT_EQ(url_foo, action.GetPopupUrl(1));
|
| - ASSERT_EQ(url_foo, action.GetPopupUrl(100));
|
| - ASSERT_TRUE(action.HasPopup(1));
|
| - ASSERT_TRUE(action.HasPopup(100));
|
| -
|
| - action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_unset);
|
| - ASSERT_EQ(url_unset, action.GetPopupUrl(1));
|
| - ASSERT_EQ(url_unset, action.GetPopupUrl(100));
|
| - ASSERT_FALSE(action.HasPopup(1));
|
| - ASSERT_FALSE(action.HasPopup(100));
|
| -
|
| - action.SetPopupUrl(100, url_bar);
|
| - ASSERT_EQ(url_unset, action.GetPopupUrl(1));
|
| - ASSERT_EQ(url_bar, action.GetPopupUrl(100));
|
| -
|
| - action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz);
|
| - ASSERT_EQ(url_baz, action.GetPopupUrl(1));
|
| - ASSERT_EQ(url_bar, action.GetPopupUrl(100));
|
| -
|
| - action.ClearAllValuesForTab(100);
|
| - ASSERT_EQ(url_baz, action.GetPopupUrl(1));
|
| - ASSERT_EQ(url_baz, action.GetPopupUrl(100));
|
| + scoped_ptr<ExtensionAction> action =
|
| + CreateAction(ActionInfo::TYPE_PAGE, action_info);
|
| +
|
| + ASSERT_EQ(url_foo, action->GetPopupUrl(1));
|
| + ASSERT_EQ(url_foo, action->GetPopupUrl(100));
|
| + ASSERT_TRUE(action->HasPopup(1));
|
| + ASSERT_TRUE(action->HasPopup(100));
|
| +
|
| + action->SetPopupUrl(ExtensionAction::kDefaultTabId, url_unset);
|
| + ASSERT_EQ(url_unset, action->GetPopupUrl(1));
|
| + ASSERT_EQ(url_unset, action->GetPopupUrl(100));
|
| + ASSERT_FALSE(action->HasPopup(1));
|
| + ASSERT_FALSE(action->HasPopup(100));
|
| +
|
| + action->SetPopupUrl(100, url_bar);
|
| + ASSERT_EQ(url_unset, action->GetPopupUrl(1));
|
| + ASSERT_EQ(url_bar, action->GetPopupUrl(100));
|
| +
|
| + action->SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz);
|
| + ASSERT_EQ(url_baz, action->GetPopupUrl(1));
|
| + ASSERT_EQ(url_bar, action->GetPopupUrl(100));
|
| +
|
| + action->ClearAllValuesForTab(100);
|
| + ASSERT_EQ(url_baz, action->GetPopupUrl(1));
|
| + ASSERT_EQ(url_baz, action->GetPopupUrl(100));
|
| }
|
|
|
| -} // namespace
|
| +} // namespace extensions
|
|
|