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

Side by Side Diff: chrome/browser/extensions/extension_action_unittest.cc

Issue 13145003: Rewrite std::string("") to std::string(), Linux edition. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Ugh Created 7 years, 8 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/message_loop.h" 5 #include "base/message_loop.h"
6 #include "chrome/browser/extensions/extension_action.h" 6 #include "chrome/browser/extensions/extension_action.h"
7 #include "chrome/common/extensions/api/extension_action/action_info.h" 7 #include "chrome/common/extensions/api/extension_action/action_info.h"
8 #include "googleurl/src/gurl.h" 8 #include "googleurl/src/gurl.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 namespace { 11 namespace {
12 12
13 using extensions::ActionInfo; 13 using extensions::ActionInfo;
14 14
15 TEST(ExtensionActionTest, Title) { 15 TEST(ExtensionActionTest, Title) {
16 ActionInfo action_info; 16 ActionInfo action_info;
17 action_info.default_title = "Initial Title"; 17 action_info.default_title = "Initial Title";
18 ExtensionAction action("", ActionInfo::TYPE_PAGE, action_info); 18 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, action_info);
19 19
20 ASSERT_EQ("Initial Title", action.GetTitle(1)); 20 ASSERT_EQ("Initial Title", action.GetTitle(1));
21 action.SetTitle(ExtensionAction::kDefaultTabId, "foo"); 21 action.SetTitle(ExtensionAction::kDefaultTabId, "foo");
22 ASSERT_EQ("foo", action.GetTitle(1)); 22 ASSERT_EQ("foo", action.GetTitle(1));
23 ASSERT_EQ("foo", action.GetTitle(100)); 23 ASSERT_EQ("foo", action.GetTitle(100));
24 action.SetTitle(100, "bar"); 24 action.SetTitle(100, "bar");
25 ASSERT_EQ("foo", action.GetTitle(1)); 25 ASSERT_EQ("foo", action.GetTitle(1));
26 ASSERT_EQ("bar", action.GetTitle(100)); 26 ASSERT_EQ("bar", action.GetTitle(100));
27 action.SetTitle(ExtensionAction::kDefaultTabId, "baz"); 27 action.SetTitle(ExtensionAction::kDefaultTabId, "baz");
28 ASSERT_EQ("baz", action.GetTitle(1)); 28 ASSERT_EQ("baz", action.GetTitle(1));
29 action.ClearAllValuesForTab(100); 29 action.ClearAllValuesForTab(100);
30 ASSERT_EQ("baz", action.GetTitle(100)); 30 ASSERT_EQ("baz", action.GetTitle(100));
31 } 31 }
32 32
33 TEST(ExtensionActionTest, Visibility) { 33 TEST(ExtensionActionTest, Visibility) {
34 ExtensionAction action("", ActionInfo::TYPE_PAGE, 34 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
35 ActionInfo());
36 35
37 ASSERT_FALSE(action.GetIsVisible(1)); 36 ASSERT_FALSE(action.GetIsVisible(1));
38 action.SetAppearance(ExtensionAction::kDefaultTabId, ExtensionAction::ACTIVE); 37 action.SetAppearance(ExtensionAction::kDefaultTabId, ExtensionAction::ACTIVE);
39 ASSERT_TRUE(action.GetIsVisible(1)); 38 ASSERT_TRUE(action.GetIsVisible(1));
40 ASSERT_TRUE(action.GetIsVisible(100)); 39 ASSERT_TRUE(action.GetIsVisible(100));
41 40
42 action.SetAppearance(ExtensionAction::kDefaultTabId, 41 action.SetAppearance(ExtensionAction::kDefaultTabId,
43 ExtensionAction::INVISIBLE); 42 ExtensionAction::INVISIBLE);
44 ASSERT_FALSE(action.GetIsVisible(1)); 43 ASSERT_FALSE(action.GetIsVisible(1));
45 ASSERT_FALSE(action.GetIsVisible(100)); 44 ASSERT_FALSE(action.GetIsVisible(100));
46 action.SetAppearance(100, ExtensionAction::ACTIVE); 45 action.SetAppearance(100, ExtensionAction::ACTIVE);
47 ASSERT_FALSE(action.GetIsVisible(1)); 46 ASSERT_FALSE(action.GetIsVisible(1));
48 ASSERT_TRUE(action.GetIsVisible(100)); 47 ASSERT_TRUE(action.GetIsVisible(100));
49 EXPECT_FALSE(action.GetIconAnimation(100)) 48 EXPECT_FALSE(action.GetIconAnimation(100))
50 << "Page actions should not animate."; 49 << "Page actions should not animate.";
51 50
52 action.ClearAllValuesForTab(100); 51 action.ClearAllValuesForTab(100);
53 ASSERT_FALSE(action.GetIsVisible(1)); 52 ASSERT_FALSE(action.GetIsVisible(1));
54 ASSERT_FALSE(action.GetIsVisible(100)); 53 ASSERT_FALSE(action.GetIsVisible(100));
55 54
56 ExtensionAction browser_action("", ActionInfo::TYPE_BROWSER, 55 ExtensionAction browser_action(
57 ActionInfo()); 56 std::string(), ActionInfo::TYPE_BROWSER, ActionInfo());
58 ASSERT_TRUE(browser_action.GetIsVisible(1)); 57 ASSERT_TRUE(browser_action.GetIsVisible(1));
59 } 58 }
60 59
61 TEST(ExtensionActionTest, ScriptBadgeAnimation) { 60 TEST(ExtensionActionTest, ScriptBadgeAnimation) {
62 // Supports the icon animation. 61 // Supports the icon animation.
63 MessageLoop message_loop; 62 MessageLoop message_loop;
64 63
65 ExtensionAction script_badge("", ActionInfo::TYPE_SCRIPT_BADGE, 64 ExtensionAction script_badge(
66 ActionInfo()); 65 std::string(), ActionInfo::TYPE_SCRIPT_BADGE, ActionInfo());
67 EXPECT_FALSE(script_badge.GetIconAnimation(ExtensionAction::kDefaultTabId)); 66 EXPECT_FALSE(script_badge.GetIconAnimation(ExtensionAction::kDefaultTabId));
68 script_badge.SetAppearance(ExtensionAction::kDefaultTabId, 67 script_badge.SetAppearance(ExtensionAction::kDefaultTabId,
69 ExtensionAction::ACTIVE); 68 ExtensionAction::ACTIVE);
70 EXPECT_FALSE(script_badge.GetIconAnimation(ExtensionAction::kDefaultTabId)) 69 EXPECT_FALSE(script_badge.GetIconAnimation(ExtensionAction::kDefaultTabId))
71 << "Showing the default tab should not animate script badges."; 70 << "Showing the default tab should not animate script badges.";
72 71
73 script_badge.SetAppearance(ExtensionAction::kDefaultTabId, 72 script_badge.SetAppearance(ExtensionAction::kDefaultTabId,
74 ExtensionAction::INVISIBLE); 73 ExtensionAction::INVISIBLE);
75 EXPECT_FALSE(script_badge.GetIconAnimation(1)) 74 EXPECT_FALSE(script_badge.GetIconAnimation(1))
76 << "Making a script badge invisible should not show its animation."; 75 << "Making a script badge invisible should not show its animation.";
77 script_badge.SetAppearance(1, ExtensionAction::ACTIVE); 76 script_badge.SetAppearance(1, ExtensionAction::ACTIVE);
78 EXPECT_TRUE(script_badge.GetIconAnimation(1)) 77 EXPECT_TRUE(script_badge.GetIconAnimation(1))
79 << "Making a script badge visible should show its animation."; 78 << "Making a script badge visible should show its animation.";
80 79
81 script_badge.ClearAllValuesForTab(1); 80 script_badge.ClearAllValuesForTab(1);
82 EXPECT_FALSE(script_badge.GetIconAnimation(100)); 81 EXPECT_FALSE(script_badge.GetIconAnimation(100));
83 } 82 }
84 83
85 TEST(ExtensionActionTest, GetAttention) { 84 TEST(ExtensionActionTest, GetAttention) {
86 // Supports the icon animation. 85 // Supports the icon animation.
87 scoped_ptr<MessageLoop> message_loop(new MessageLoop); 86 scoped_ptr<MessageLoop> message_loop(new MessageLoop);
88 87
89 ExtensionAction script_badge("", ActionInfo::TYPE_SCRIPT_BADGE, 88 ExtensionAction script_badge(
90 ActionInfo()); 89 std::string(), ActionInfo::TYPE_SCRIPT_BADGE, ActionInfo());
91 EXPECT_FALSE(script_badge.GetIsVisible(1)); 90 EXPECT_FALSE(script_badge.GetIsVisible(1));
92 EXPECT_FALSE(script_badge.GetIconAnimation(1)); 91 EXPECT_FALSE(script_badge.GetIconAnimation(1));
93 script_badge.SetAppearance(1, ExtensionAction::WANTS_ATTENTION); 92 script_badge.SetAppearance(1, ExtensionAction::WANTS_ATTENTION);
94 EXPECT_TRUE(script_badge.GetIsVisible(1)); 93 EXPECT_TRUE(script_badge.GetIsVisible(1));
95 EXPECT_TRUE(script_badge.GetIconAnimation(1)); 94 EXPECT_TRUE(script_badge.GetIconAnimation(1));
96 95
97 // Simulate waiting long enough for the animation to end. 96 // Simulate waiting long enough for the animation to end.
98 message_loop.reset(); // Can't have 2 MessageLoops alive at once. 97 message_loop.reset(); // Can't have 2 MessageLoops alive at once.
99 message_loop.reset(new MessageLoop); 98 message_loop.reset(new MessageLoop);
100 EXPECT_FALSE(script_badge.GetIconAnimation(1)); // Sanity check. 99 EXPECT_FALSE(script_badge.GetIconAnimation(1)); // Sanity check.
101 100
102 script_badge.SetAppearance(1, ExtensionAction::ACTIVE); 101 script_badge.SetAppearance(1, ExtensionAction::ACTIVE);
103 EXPECT_FALSE(script_badge.GetIconAnimation(1)) 102 EXPECT_FALSE(script_badge.GetIconAnimation(1))
104 << "The animation should not play again if the icon was already visible."; 103 << "The animation should not play again if the icon was already visible.";
105 } 104 }
106 105
107 TEST(ExtensionActionTest, Icon) { 106 TEST(ExtensionActionTest, Icon) {
108 ActionInfo action_info; 107 ActionInfo action_info;
109 action_info.default_icon.Add(16, "icon16.png"); 108 action_info.default_icon.Add(16, "icon16.png");
110 ExtensionAction page_action("", ActionInfo::TYPE_PAGE, 109 ExtensionAction page_action(
111 action_info); 110 std::string(), ActionInfo::TYPE_PAGE, action_info);
112 ASSERT_TRUE(page_action.default_icon()); 111 ASSERT_TRUE(page_action.default_icon());
113 EXPECT_EQ("icon16.png", 112 EXPECT_EQ("icon16.png",
114 page_action.default_icon()->Get( 113 page_action.default_icon()->Get(
115 16, ExtensionIconSet::MATCH_EXACTLY)); 114 16, ExtensionIconSet::MATCH_EXACTLY));
116 EXPECT_EQ("", 115 EXPECT_EQ("",
117 page_action.default_icon()->Get( 116 page_action.default_icon()->Get(
118 17, ExtensionIconSet::MATCH_BIGGER)); 117 17, ExtensionIconSet::MATCH_BIGGER));
119 } 118 }
120 119
121 TEST(ExtensionActionTest, Badge) { 120 TEST(ExtensionActionTest, Badge) {
122 ExtensionAction action("", ActionInfo::TYPE_PAGE, 121 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
123 ActionInfo());
124 ASSERT_EQ("", action.GetBadgeText(1)); 122 ASSERT_EQ("", action.GetBadgeText(1));
125 action.SetBadgeText(ExtensionAction::kDefaultTabId, "foo"); 123 action.SetBadgeText(ExtensionAction::kDefaultTabId, "foo");
126 ASSERT_EQ("foo", action.GetBadgeText(1)); 124 ASSERT_EQ("foo", action.GetBadgeText(1));
127 ASSERT_EQ("foo", action.GetBadgeText(100)); 125 ASSERT_EQ("foo", action.GetBadgeText(100));
128 action.SetBadgeText(100, "bar"); 126 action.SetBadgeText(100, "bar");
129 ASSERT_EQ("foo", action.GetBadgeText(1)); 127 ASSERT_EQ("foo", action.GetBadgeText(1));
130 ASSERT_EQ("bar", action.GetBadgeText(100)); 128 ASSERT_EQ("bar", action.GetBadgeText(100));
131 action.SetBadgeText(ExtensionAction::kDefaultTabId, "baz"); 129 action.SetBadgeText(ExtensionAction::kDefaultTabId, "baz");
132 ASSERT_EQ("baz", action.GetBadgeText(1)); 130 ASSERT_EQ("baz", action.GetBadgeText(1));
133 action.ClearAllValuesForTab(100); 131 action.ClearAllValuesForTab(100);
134 ASSERT_EQ("baz", action.GetBadgeText(100)); 132 ASSERT_EQ("baz", action.GetBadgeText(100));
135 } 133 }
136 134
137 TEST(ExtensionActionTest, BadgeTextColor) { 135 TEST(ExtensionActionTest, BadgeTextColor) {
138 ExtensionAction action("", ActionInfo::TYPE_PAGE, 136 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
139 ActionInfo());
140 ASSERT_EQ(0x00000000u, action.GetBadgeTextColor(1)); 137 ASSERT_EQ(0x00000000u, action.GetBadgeTextColor(1));
141 action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFFFF0000u); 138 action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFFFF0000u);
142 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1)); 139 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1));
143 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(100)); 140 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(100));
144 action.SetBadgeTextColor(100, 0xFF00FF00); 141 action.SetBadgeTextColor(100, 0xFF00FF00);
145 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1)); 142 ASSERT_EQ(0xFFFF0000u, action.GetBadgeTextColor(1));
146 ASSERT_EQ(0xFF00FF00u, action.GetBadgeTextColor(100)); 143 ASSERT_EQ(0xFF00FF00u, action.GetBadgeTextColor(100));
147 action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFF0000FFu); 144 action.SetBadgeTextColor(ExtensionAction::kDefaultTabId, 0xFF0000FFu);
148 ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(1)); 145 ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(1));
149 action.ClearAllValuesForTab(100); 146 action.ClearAllValuesForTab(100);
150 ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(100)); 147 ASSERT_EQ(0xFF0000FFu, action.GetBadgeTextColor(100));
151 } 148 }
152 149
153 TEST(ExtensionActionTest, BadgeBackgroundColor) { 150 TEST(ExtensionActionTest, BadgeBackgroundColor) {
154 ExtensionAction action("", ActionInfo::TYPE_PAGE, 151 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, ActionInfo());
155 ActionInfo());
156 ASSERT_EQ(0x00000000u, action.GetBadgeBackgroundColor(1)); 152 ASSERT_EQ(0x00000000u, action.GetBadgeBackgroundColor(1));
157 action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId, 153 action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
158 0xFFFF0000u); 154 0xFFFF0000u);
159 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1)); 155 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1));
160 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(100)); 156 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(100));
161 action.SetBadgeBackgroundColor(100, 0xFF00FF00); 157 action.SetBadgeBackgroundColor(100, 0xFF00FF00);
162 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1)); 158 ASSERT_EQ(0xFFFF0000u, action.GetBadgeBackgroundColor(1));
163 ASSERT_EQ(0xFF00FF00u, action.GetBadgeBackgroundColor(100)); 159 ASSERT_EQ(0xFF00FF00u, action.GetBadgeBackgroundColor(100));
164 action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId, 160 action.SetBadgeBackgroundColor(ExtensionAction::kDefaultTabId,
165 0xFF0000FFu); 161 0xFF0000FFu);
166 ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(1)); 162 ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(1));
167 action.ClearAllValuesForTab(100); 163 action.ClearAllValuesForTab(100);
168 ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(100)); 164 ASSERT_EQ(0xFF0000FFu, action.GetBadgeBackgroundColor(100));
169 } 165 }
170 166
171 TEST(ExtensionActionTest, PopupUrl) { 167 TEST(ExtensionActionTest, PopupUrl) {
172 GURL url_unset; 168 GURL url_unset;
173 GURL url_foo("http://www.example.com/foo.html"); 169 GURL url_foo("http://www.example.com/foo.html");
174 GURL url_bar("http://www.example.com/bar.html"); 170 GURL url_bar("http://www.example.com/bar.html");
175 GURL url_baz("http://www.example.com/baz.html"); 171 GURL url_baz("http://www.example.com/baz.html");
176 172
177 ActionInfo action_info; 173 ActionInfo action_info;
178 action_info.default_popup_url = url_foo; 174 action_info.default_popup_url = url_foo;
179 ExtensionAction action("", ActionInfo::TYPE_PAGE, action_info); 175 ExtensionAction action(std::string(), ActionInfo::TYPE_PAGE, action_info);
180 176
181 ASSERT_EQ(url_foo, action.GetPopupUrl(1)); 177 ASSERT_EQ(url_foo, action.GetPopupUrl(1));
182 ASSERT_EQ(url_foo, action.GetPopupUrl(100)); 178 ASSERT_EQ(url_foo, action.GetPopupUrl(100));
183 ASSERT_TRUE(action.HasPopup(1)); 179 ASSERT_TRUE(action.HasPopup(1));
184 ASSERT_TRUE(action.HasPopup(100)); 180 ASSERT_TRUE(action.HasPopup(100));
185 181
186 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_unset); 182 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_unset);
187 ASSERT_EQ(url_unset, action.GetPopupUrl(1)); 183 ASSERT_EQ(url_unset, action.GetPopupUrl(1));
188 ASSERT_EQ(url_unset, action.GetPopupUrl(100)); 184 ASSERT_EQ(url_unset, action.GetPopupUrl(100));
189 ASSERT_FALSE(action.HasPopup(1)); 185 ASSERT_FALSE(action.HasPopup(1));
190 ASSERT_FALSE(action.HasPopup(100)); 186 ASSERT_FALSE(action.HasPopup(100));
191 187
192 action.SetPopupUrl(100, url_bar); 188 action.SetPopupUrl(100, url_bar);
193 ASSERT_EQ(url_unset, action.GetPopupUrl(1)); 189 ASSERT_EQ(url_unset, action.GetPopupUrl(1));
194 ASSERT_EQ(url_bar, action.GetPopupUrl(100)); 190 ASSERT_EQ(url_bar, action.GetPopupUrl(100));
195 191
196 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz); 192 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz);
197 ASSERT_EQ(url_baz, action.GetPopupUrl(1)); 193 ASSERT_EQ(url_baz, action.GetPopupUrl(1));
198 ASSERT_EQ(url_bar, action.GetPopupUrl(100)); 194 ASSERT_EQ(url_bar, action.GetPopupUrl(100));
199 195
200 action.ClearAllValuesForTab(100); 196 action.ClearAllValuesForTab(100);
201 ASSERT_EQ(url_baz, action.GetPopupUrl(1)); 197 ASSERT_EQ(url_baz, action.GetPopupUrl(1));
202 ASSERT_EQ(url_baz, action.GetPopupUrl(100)); 198 ASSERT_EQ(url_baz, action.GetPopupUrl(100));
203 } 199 }
204 200
205 } // namespace 201 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/extensions/event_router_forwarder.cc ('k') | chrome/browser/extensions/extension_apitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698