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

Side by Side Diff: components/favicon/core/large_icon_service_unittest.cc

Issue 2053913002: Remove MessageLoop::current()->RunUntilIdle() in components. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "components/favicon/core/large_icon_service.h" 5 #include "components/favicon/core/large_icon_service.h"
6 6
7 #include <deque> 7 #include <deque>
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
11 #include "base/macros.h" 11 #include "base/macros.h"
12 #include "base/memory/ref_counted_memory.h" 12 #include "base/memory/ref_counted_memory.h"
13 #include "base/message_loop/message_loop.h" 13 #include "base/message_loop/message_loop.h"
14 #include "base/run_loop.h"
14 #include "base/task/cancelable_task_tracker.h" 15 #include "base/task/cancelable_task_tracker.h"
15 #include "components/favicon/core/favicon_client.h" 16 #include "components/favicon/core/favicon_client.h"
16 #include "components/favicon/core/favicon_service.h" 17 #include "components/favicon/core/favicon_service.h"
17 #include "components/favicon_base/fallback_icon_style.h" 18 #include "components/favicon_base/fallback_icon_style.h"
18 #include "components/favicon_base/favicon_types.h" 19 #include "components/favicon_base/favicon_types.h"
19 #include "testing/gtest/include/gtest/gtest.h" 20 #include "testing/gtest/include/gtest/gtest.h"
20 #include "third_party/skia/include/core/SkBitmap.h" 21 #include "third_party/skia/include/core/SkBitmap.h"
21 #include "third_party/skia/include/core/SkColor.h" 22 #include "third_party/skia/include/core/SkColor.h"
22 #include "ui/gfx/codec/png_codec.h" 23 #include "ui/gfx/codec/png_codec.h"
23 #include "ui/gfx/geometry/size.h" 24 #include "ui/gfx/geometry/size.h"
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 158
158 TEST_F(LargeIconServiceTest, SameSize) { 159 TEST_F(LargeIconServiceTest, SameSize) {
159 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor)); 160 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor));
160 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor); 161 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor);
161 large_icon_service_->GetLargeIconOrFallbackStyle( 162 large_icon_service_->GetLargeIconOrFallbackStyle(
162 GURL(kDummyUrl), 163 GURL(kDummyUrl),
163 24, // |min_source_size_in_pixel| 164 24, // |min_source_size_in_pixel|
164 24, // |desired_size_in_pixel| 165 24, // |desired_size_in_pixel|
165 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 166 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
166 &cancelable_task_tracker_); 167 &cancelable_task_tracker_);
167 base::MessageLoop::current()->RunUntilIdle(); 168 base::RunLoop().RunUntilIdle();
168 EXPECT_TRUE(is_callback_invoked_); 169 EXPECT_TRUE(is_callback_invoked_);
169 } 170 }
170 171
171 TEST_F(LargeIconServiceTest, ScaleDown) { 172 TEST_F(LargeIconServiceTest, ScaleDown) {
172 mock_favicon_service_->InjectResult(CreateTestBitmap(32, 32, kTestColor)); 173 mock_favicon_service_->InjectResult(CreateTestBitmap(32, 32, kTestColor));
173 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor); 174 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor);
174 large_icon_service_->GetLargeIconOrFallbackStyle( 175 large_icon_service_->GetLargeIconOrFallbackStyle(
175 GURL(kDummyUrl), 176 GURL(kDummyUrl),
176 24, 177 24,
177 24, 178 24,
178 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 179 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
179 &cancelable_task_tracker_); 180 &cancelable_task_tracker_);
180 base::MessageLoop::current()->RunUntilIdle(); 181 base::RunLoop().RunUntilIdle();
181 EXPECT_TRUE(is_callback_invoked_); 182 EXPECT_TRUE(is_callback_invoked_);
182 } 183 }
183 184
184 TEST_F(LargeIconServiceTest, ScaleUp) { 185 TEST_F(LargeIconServiceTest, ScaleUp) {
185 mock_favicon_service_->InjectResult(CreateTestBitmap(16, 16, kTestColor)); 186 mock_favicon_service_->InjectResult(CreateTestBitmap(16, 16, kTestColor));
186 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor); 187 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor);
187 large_icon_service_->GetLargeIconOrFallbackStyle( 188 large_icon_service_->GetLargeIconOrFallbackStyle(
188 GURL(kDummyUrl), 189 GURL(kDummyUrl),
189 14, // Lowered requirement so stored bitmap is admitted. 190 14, // Lowered requirement so stored bitmap is admitted.
190 24, 191 24,
191 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 192 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
192 &cancelable_task_tracker_); 193 &cancelable_task_tracker_);
193 base::MessageLoop::current()->RunUntilIdle(); 194 base::RunLoop().RunUntilIdle();
194 EXPECT_TRUE(is_callback_invoked_); 195 EXPECT_TRUE(is_callback_invoked_);
195 } 196 }
196 197
197 // |desired_size_in_pixel| == 0 means retrieve original image without scaling. 198 // |desired_size_in_pixel| == 0 means retrieve original image without scaling.
198 TEST_F(LargeIconServiceTest, NoScale) { 199 TEST_F(LargeIconServiceTest, NoScale) {
199 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor)); 200 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor));
200 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor); 201 expected_bitmap_ = CreateTestBitmap(24, 24, kTestColor);
201 large_icon_service_->GetLargeIconOrFallbackStyle( 202 large_icon_service_->GetLargeIconOrFallbackStyle(
202 GURL(kDummyUrl), 203 GURL(kDummyUrl),
203 16, 204 16,
204 0, 205 0,
205 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 206 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
206 &cancelable_task_tracker_); 207 &cancelable_task_tracker_);
207 base::MessageLoop::current()->RunUntilIdle(); 208 base::RunLoop().RunUntilIdle();
208 EXPECT_TRUE(is_callback_invoked_); 209 EXPECT_TRUE(is_callback_invoked_);
209 } 210 }
210 211
211 TEST_F(LargeIconServiceTest, FallbackSinceIconTooSmall) { 212 TEST_F(LargeIconServiceTest, FallbackSinceIconTooSmall) {
212 mock_favicon_service_->InjectResult(CreateTestBitmap(16, 16, kTestColor)); 213 mock_favicon_service_->InjectResult(CreateTestBitmap(16, 16, kTestColor));
213 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle); 214 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle);
214 expected_fallback_icon_style_->background_color = kTestColor; 215 expected_fallback_icon_style_->background_color = kTestColor;
215 large_icon_service_->GetLargeIconOrFallbackStyle( 216 large_icon_service_->GetLargeIconOrFallbackStyle(
216 GURL(kDummyUrl), 217 GURL(kDummyUrl),
217 24, 218 24,
218 24, 219 24,
219 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 220 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
220 &cancelable_task_tracker_); 221 &cancelable_task_tracker_);
221 base::MessageLoop::current()->RunUntilIdle(); 222 base::RunLoop().RunUntilIdle();
222 EXPECT_TRUE(is_callback_invoked_); 223 EXPECT_TRUE(is_callback_invoked_);
223 } 224 }
224 225
225 TEST_F(LargeIconServiceTest, FallbackSinceIconNotSquare) { 226 TEST_F(LargeIconServiceTest, FallbackSinceIconNotSquare) {
226 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 32, kTestColor)); 227 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 32, kTestColor));
227 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle); 228 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle);
228 expected_fallback_icon_style_->background_color = kTestColor; 229 expected_fallback_icon_style_->background_color = kTestColor;
229 large_icon_service_->GetLargeIconOrFallbackStyle( 230 large_icon_service_->GetLargeIconOrFallbackStyle(
230 GURL(kDummyUrl), 231 GURL(kDummyUrl),
231 24, 232 24,
232 24, 233 24,
233 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 234 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
234 &cancelable_task_tracker_); 235 &cancelable_task_tracker_);
235 base::MessageLoop::current()->RunUntilIdle(); 236 base::RunLoop().RunUntilIdle();
236 EXPECT_TRUE(is_callback_invoked_); 237 EXPECT_TRUE(is_callback_invoked_);
237 } 238 }
238 239
239 TEST_F(LargeIconServiceTest, FallbackSinceIconMissing) { 240 TEST_F(LargeIconServiceTest, FallbackSinceIconMissing) {
240 mock_favicon_service_->InjectResult(favicon_base::FaviconRawBitmapResult()); 241 mock_favicon_service_->InjectResult(favicon_base::FaviconRawBitmapResult());
241 // Expect default fallback style, including background. 242 // Expect default fallback style, including background.
242 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle); 243 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle);
243 large_icon_service_->GetLargeIconOrFallbackStyle( 244 large_icon_service_->GetLargeIconOrFallbackStyle(
244 GURL(kDummyUrl), 245 GURL(kDummyUrl),
245 24, 246 24,
246 24, 247 24,
247 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 248 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
248 &cancelable_task_tracker_); 249 &cancelable_task_tracker_);
249 base::MessageLoop::current()->RunUntilIdle(); 250 base::RunLoop().RunUntilIdle();
250 EXPECT_TRUE(is_callback_invoked_); 251 EXPECT_TRUE(is_callback_invoked_);
251 } 252 }
252 253
253 TEST_F(LargeIconServiceTest, FallbackSinceIconMissingNoScale) { 254 TEST_F(LargeIconServiceTest, FallbackSinceIconMissingNoScale) {
254 mock_favicon_service_->InjectResult(favicon_base::FaviconRawBitmapResult()); 255 mock_favicon_service_->InjectResult(favicon_base::FaviconRawBitmapResult());
255 // Expect default fallback style, including background. 256 // Expect default fallback style, including background.
256 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle); 257 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle);
257 large_icon_service_->GetLargeIconOrFallbackStyle( 258 large_icon_service_->GetLargeIconOrFallbackStyle(
258 GURL(kDummyUrl), 259 GURL(kDummyUrl),
259 24, 260 24,
260 0, 261 0,
261 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 262 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
262 &cancelable_task_tracker_); 263 &cancelable_task_tracker_);
263 base::MessageLoop::current()->RunUntilIdle(); 264 base::RunLoop().RunUntilIdle();
264 EXPECT_TRUE(is_callback_invoked_); 265 EXPECT_TRUE(is_callback_invoked_);
265 } 266 }
266 267
267 // Oddball case where we demand a high resolution icon to scale down. Generates 268 // Oddball case where we demand a high resolution icon to scale down. Generates
268 // fallback even though an icon with the final size is available. 269 // fallback even though an icon with the final size is available.
269 TEST_F(LargeIconServiceTest, FallbackSinceTooPicky) { 270 TEST_F(LargeIconServiceTest, FallbackSinceTooPicky) {
270 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor)); 271 mock_favicon_service_->InjectResult(CreateTestBitmap(24, 24, kTestColor));
271 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle); 272 expected_fallback_icon_style_.reset(new favicon_base::FallbackIconStyle);
272 expected_fallback_icon_style_->background_color = kTestColor; 273 expected_fallback_icon_style_->background_color = kTestColor;
273 large_icon_service_->GetLargeIconOrFallbackStyle( 274 large_icon_service_->GetLargeIconOrFallbackStyle(
274 GURL(kDummyUrl), 275 GURL(kDummyUrl),
275 32, 276 32,
276 24, 277 24,
277 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)), 278 base::Bind(&LargeIconServiceTest::ResultCallback, base::Unretained(this)),
278 &cancelable_task_tracker_); 279 &cancelable_task_tracker_);
279 base::MessageLoop::current()->RunUntilIdle(); 280 base::RunLoop().RunUntilIdle();
280 EXPECT_TRUE(is_callback_invoked_); 281 EXPECT_TRUE(is_callback_invoked_);
281 } 282 }
282 283
283 } // namespace 284 } // namespace
284 } // namespace favicon 285 } // namespace favicon
OLDNEW
« no previous file with comments | « components/dom_distiller/core/distiller_unittest.cc ('k') | components/google/core/browser/google_url_tracker_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698