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

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

Issue 10914244: Remove support for page_action.icons, and the legacy code surrounding it. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: constants removed Created 8 years, 3 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/file_path.h" 5 #include "base/file_path.h"
6 #include "base/file_util.h" 6 #include "base/file_util.h"
7 #include "base/message_loop.h" 7 #include "base/message_loop.h"
8 #include "base/path_service.h" 8 #include "base/path_service.h"
9 #include "chrome/common/chrome_paths.h" 9 #include "chrome/common/chrome_paths.h"
10 #include "chrome/common/extensions/extension_action.h" 10 #include "chrome/common/extensions/extension_action.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 gfx::Image puzzle_piece = 67 gfx::Image puzzle_piece =
68 ui::ResourceBundle::GetSharedInstance().GetImageNamed( 68 ui::ResourceBundle::GetSharedInstance().GetImageNamed(
69 IDR_EXTENSIONS_FAVICON); 69 IDR_EXTENSIONS_FAVICON);
70 gfx::Image icon1 = LoadIcon("icon1.png"); 70 gfx::Image icon1 = LoadIcon("icon1.png");
71 gfx::Image icon2 = LoadIcon("icon2.png"); 71 gfx::Image icon2 = LoadIcon("icon2.png");
72 ASSERT_TRUE(ImagesAreEqual(puzzle_piece, action.GetIcon(1))); 72 ASSERT_TRUE(ImagesAreEqual(puzzle_piece, action.GetIcon(1)));
73 73
74 action.set_default_icon_path("the_default.png"); 74 action.set_default_icon_path("the_default.png");
75 ASSERT_TRUE(ImagesAreEqual(puzzle_piece, action.GetIcon(1))) 75 ASSERT_TRUE(ImagesAreEqual(puzzle_piece, action.GetIcon(1)))
76 << "Still returns the puzzle piece because the image isn't loaded yet."; 76 << "Still returns the puzzle piece because the image isn't loaded yet.";
77 action.CacheIcon("the_default.png", icon2); 77 action.CacheIcon(icon2);
78 ASSERT_TRUE(ImagesAreEqual(icon2, action.GetIcon(1))); 78 ASSERT_TRUE(ImagesAreEqual(icon2, action.GetIcon(1)));
79 79
80 action.SetIcon(ExtensionAction::kDefaultTabId, icon1); 80 action.SetIcon(ExtensionAction::kDefaultTabId, icon1);
81 ASSERT_TRUE(ImagesAreEqual(icon1, action.GetIcon(100))) 81 ASSERT_TRUE(ImagesAreEqual(icon1, action.GetIcon(100)))
82 << "SetIcon(kDefaultTabId) overrides the default_icon_path."; 82 << "SetIcon(kDefaultTabId) overrides the default_icon_path.";
83 83
84 action.SetIcon(100, icon2); 84 action.SetIcon(100, icon2);
85 ASSERT_TRUE(ImagesAreEqual(icon1, action.GetIcon(1))); 85 ASSERT_TRUE(ImagesAreEqual(icon1, action.GetIcon(1)));
86 ASSERT_TRUE(ImagesAreEqual(icon2, action.GetIcon(100))); 86 ASSERT_TRUE(ImagesAreEqual(icon2, action.GetIcon(100)));
87 } 87 }
88 88
89 TEST_F(ExtensionActionTest, IconIndex) {
90 gfx::Image icon1 = LoadIcon("icon1.png");
91 gfx::Image icon2 = LoadIcon("icon2.png");
92 gfx::Image puzzle_piece =
93 ui::ResourceBundle::GetSharedInstance().GetImageNamed(
94 IDR_EXTENSIONS_FAVICON);
95
96 ASSERT_EQ(-1, action.GetIconIndex(1));
97 action.icon_paths()->push_back("foo.png");
98 action.icon_paths()->push_back("bar.png");
99 action.SetIconIndex(ExtensionAction::kDefaultTabId, 1);
100 ASSERT_EQ(1, action.GetIconIndex(1));
101 ASSERT_EQ(1, action.GetIconIndex(100));
102 ASSERT_TRUE(ImagesAreEqual(puzzle_piece, action.GetIcon(100)))
103 << "Non-loaded icon gets the puzzle piece.";
104 action.CacheIcon("bar.png", icon1);
105 ASSERT_TRUE(ImagesAreEqual(icon1, action.GetIcon(100)));
106
107 action.SetIconIndex(100, 0);
108 ASSERT_EQ(0, action.GetIconIndex(100));
109 ASSERT_EQ(1, action.GetIconIndex(1));
110 action.ClearAllValuesForTab(100);
111 ASSERT_EQ(1, action.GetIconIndex(100));
112 ASSERT_EQ(1, action.GetIconIndex(1));
113 }
114
115 TEST_F(ExtensionActionTest, Visibility) { 89 TEST_F(ExtensionActionTest, Visibility) {
116 // Supports the icon animation. 90 // Supports the icon animation.
117 MessageLoop message_loop; 91 MessageLoop message_loop;
118 92
119 ASSERT_FALSE(action.GetIsVisible(1)); 93 ASSERT_FALSE(action.GetIsVisible(1));
120 EXPECT_FALSE(action.GetIconAnimation(ExtensionAction::kDefaultTabId)); 94 EXPECT_FALSE(action.GetIconAnimation(ExtensionAction::kDefaultTabId));
121 action.SetAppearance(ExtensionAction::kDefaultTabId, ExtensionAction::ACTIVE); 95 action.SetAppearance(ExtensionAction::kDefaultTabId, ExtensionAction::ACTIVE);
122 ASSERT_TRUE(action.GetIsVisible(1)); 96 ASSERT_TRUE(action.GetIsVisible(1));
123 ASSERT_TRUE(action.GetIsVisible(100)); 97 ASSERT_TRUE(action.GetIsVisible(100));
124 EXPECT_FALSE(action.GetIconAnimation(ExtensionAction::kDefaultTabId)); 98 EXPECT_FALSE(action.GetIconAnimation(ExtensionAction::kDefaultTabId));
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz); 199 action.SetPopupUrl(ExtensionAction::kDefaultTabId, url_baz);
226 ASSERT_EQ(url_baz, action.GetPopupUrl(1)); 200 ASSERT_EQ(url_baz, action.GetPopupUrl(1));
227 ASSERT_EQ(url_bar, action.GetPopupUrl(100)); 201 ASSERT_EQ(url_bar, action.GetPopupUrl(100));
228 202
229 action.ClearAllValuesForTab(100); 203 action.ClearAllValuesForTab(100);
230 ASSERT_EQ(url_baz, action.GetPopupUrl(1)); 204 ASSERT_EQ(url_baz, action.GetPopupUrl(1));
231 ASSERT_EQ(url_baz, action.GetPopupUrl(100)); 205 ASSERT_EQ(url_baz, action.GetPopupUrl(100));
232 } 206 }
233 207
234 } // namespace 208 } // namespace
OLDNEW
« no previous file with comments | « chrome/common/extensions/extension_action.cc ('k') | chrome/common/extensions/extension_file_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698