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

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

Issue 2867008: Show extension icons next to their top-level context menu items.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 6 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "base/path_service.h" 6 #include "base/path_service.h"
7 #include "chrome/browser/chrome_thread.h" 7 #include "chrome/browser/chrome_thread.h"
8 #include "chrome/browser/extensions/image_loading_tracker.h" 8 #include "chrome/browser/extensions/image_loading_tracker.h"
9 #include "chrome/common/chrome_paths.h" 9 #include "chrome/common/chrome_paths.h"
10 #include "chrome/common/extensions/extension.h" 10 #include "chrome/common/extensions/extension.h"
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 ChromeThread io_thread_; 95 ChromeThread io_thread_;
96 }; 96 };
97 97
98 // Tests asking ImageLoadingTracker to cache pushes the result to the Extension. 98 // Tests asking ImageLoadingTracker to cache pushes the result to the Extension.
99 TEST_F(ImageLoadingTrackerTest, Cache) { 99 TEST_F(ImageLoadingTrackerTest, Cache) {
100 scoped_ptr<Extension> extension(CreateExtension()); 100 scoped_ptr<Extension> extension(CreateExtension());
101 ASSERT_TRUE(extension.get() != NULL); 101 ASSERT_TRUE(extension.get() != NULL);
102 102
103 ExtensionResource image_resource = 103 ExtensionResource image_resource =
104 extension->GetIconPath(Extension::EXTENSION_ICON_SMALLISH); 104 extension->GetIconPath(Extension::EXTENSION_ICON_SMALLISH);
105 gfx::Size max_size(Extension::EXTENSION_ICON_SMALLISH,
106 Extension::EXTENSION_ICON_SMALLISH);
105 ImageLoadingTracker loader(static_cast<ImageLoadingTracker::Observer*>(this)); 107 ImageLoadingTracker loader(static_cast<ImageLoadingTracker::Observer*>(this));
106 loader.LoadImage(extension.get(), 108 loader.LoadImage(extension.get(),
107 image_resource, 109 image_resource,
108 gfx::Size(Extension::EXTENSION_ICON_SMALLISH, 110 max_size,
109 Extension::EXTENSION_ICON_SMALLISH),
110 ImageLoadingTracker::CACHE); 111 ImageLoadingTracker::CACHE);
111 112
112 // The image isn't cached, so we should not have received notification. 113 // The image isn't cached, so we should not have received notification.
113 EXPECT_EQ(0, image_loaded_count()); 114 EXPECT_EQ(0, image_loaded_count());
114 115
115 WaitForImageLoad(); 116 WaitForImageLoad();
116 117
117 // We should have gotten the image. 118 // We should have gotten the image.
118 EXPECT_EQ(1, image_loaded_count()); 119 EXPECT_EQ(1, image_loaded_count());
119 120
120 // Check that the image was loaded. 121 // Check that the image was loaded.
121 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width()); 122 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width());
122 123
123 // The image should be cached in the Extension. 124 // The image should be cached in the Extension.
124 EXPECT_TRUE(extension->HasCachedImage(image_resource)); 125 EXPECT_TRUE(extension->HasCachedImage(image_resource, max_size));
125 126
126 // Make sure the image is in the extension. 127 // Make sure the image is in the extension.
127 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, 128 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH,
128 extension->GetCachedImage(image_resource).width()); 129 extension->GetCachedImage(image_resource, max_size).width());
129 130
130 // Ask the tracker for the image again, this should call us back immediately. 131 // Ask the tracker for the image again, this should call us back immediately.
131 loader.LoadImage(extension.get(), 132 loader.LoadImage(extension.get(),
132 image_resource, 133 image_resource,
133 gfx::Size(Extension::EXTENSION_ICON_SMALLISH, 134 max_size,
134 Extension::EXTENSION_ICON_SMALLISH),
135 ImageLoadingTracker::CACHE); 135 ImageLoadingTracker::CACHE);
136 // We should have gotten the image. 136 // We should have gotten the image.
137 EXPECT_EQ(1, image_loaded_count()); 137 EXPECT_EQ(1, image_loaded_count());
138 138
139 // Check that the image was loaded. 139 // Check that the image was loaded.
140 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width()); 140 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width());
141 } 141 }
142 142
143 // Tests deleting an extension while waiting for the image to load doesn't cause 143 // Tests deleting an extension while waiting for the image to load doesn't cause
144 // problems. 144 // problems.
(...skipping 25 matching lines...) Expand all
170 170
171 WaitForImageLoad(); 171 WaitForImageLoad();
172 172
173 // Even though we deleted the extension, we should still get the image. 173 // Even though we deleted the extension, we should still get the image.
174 // We should still have gotten the image. 174 // We should still have gotten the image.
175 EXPECT_EQ(1, image_loaded_count()); 175 EXPECT_EQ(1, image_loaded_count());
176 176
177 // Check that the image was loaded. 177 // Check that the image was loaded.
178 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width()); 178 EXPECT_EQ(Extension::EXTENSION_ICON_SMALLISH, image_.width());
179 } 179 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/image_loading_tracker.cc ('k') | chrome/browser/tab_contents/render_view_context_menu.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698