Index: extensions/browser/extension_icon_image_unittest.cc |
diff --git a/extensions/browser/extension_icon_image_unittest.cc b/extensions/browser/extension_icon_image_unittest.cc |
index 3fb4e691b711b001f44de60ee3f7fea1eeac34e3..29bb1ff207c59f60cda97e2e5d4105e9eafd7143 100644 |
--- a/extensions/browser/extension_icon_image_unittest.cc |
+++ b/extensions/browser/extension_icon_image_unittest.cc |
@@ -14,6 +14,7 @@ |
#include "content/public/test/test_browser_thread.h" |
#include "extensions/browser/extensions_test.h" |
#include "extensions/browser/image_loader.h" |
+#include "extensions/browser/test_image_loader.h" |
#include "extensions/common/extension.h" |
#include "extensions/common/extension_paths.h" |
#include "extensions/common/manifest.h" |
@@ -65,55 +66,6 @@ class MockImageSkiaSource : public gfx::ImageSkiaSource { |
gfx::ImageSkia image_; |
}; |
-// Helper class for synchronously loading extension image resource. |
-class TestImageLoader { |
- public: |
- explicit TestImageLoader(const Extension* extension) |
- : extension_(extension), |
- waiting_(false), |
- image_loaded_(false) { |
- } |
- virtual ~TestImageLoader() {} |
- |
- void OnImageLoaded(const gfx::Image& image) { |
- image_ = image; |
- image_loaded_ = true; |
- if (waiting_) |
- base::MessageLoop::current()->Quit(); |
- } |
- |
- SkBitmap LoadBitmap(const std::string& path, |
- int size) { |
- image_loaded_ = false; |
- |
- image_loader_.LoadImageAsync( |
- extension_, extension_->GetResource(path), gfx::Size(size, size), |
- base::Bind(&TestImageLoader::OnImageLoaded, |
- base::Unretained(this))); |
- |
- // If |image_| still hasn't been loaded (i.e. it is being loaded |
- // asynchronously), wait for it. |
- if (!image_loaded_) { |
- waiting_ = true; |
- base::MessageLoop::current()->Run(); |
- waiting_ = false; |
- } |
- |
- EXPECT_TRUE(image_loaded_); |
- |
- return image_.IsEmpty() ? SkBitmap() : *image_.ToSkBitmap(); |
- } |
- |
- private: |
- const Extension* extension_; |
- bool waiting_; |
- bool image_loaded_; |
- gfx::Image image_; |
- ImageLoader image_loader_; |
- |
- DISALLOW_COPY_AND_ASSIGN(TestImageLoader); |
-}; |
- |
class ExtensionIconImageTest : public ExtensionsTest, |
public IconImage::Observer { |
public: |
@@ -184,15 +136,6 @@ class ExtensionIconImageTest : public ExtensionsTest, |
return gfx::ImageSkia(gfx::ImageSkiaRep(gfx::Size(16, 16), 1.0f)); |
} |
- // Loads an image to be used in test from the extension. |
- // The image will be loaded from the relative path |path|. |
- SkBitmap GetTestBitmap(const Extension* extension, |
- const std::string& path, |
- int size) { |
- TestImageLoader image_loader(extension); |
- return image_loader.LoadBitmap(path, size); |
- } |
- |
private: |
int image_loaded_count_; |
bool quit_in_image_loaded_; |
@@ -220,13 +163,14 @@ TEST_F(ExtensionIconImageTest, Basic) { |
// Load images we expect to find as representations in icon_image, so we |
// can later use them to validate icon_image. |
- SkBitmap bitmap_16 = GetTestBitmap(extension.get(), "16.png", 16); |
+ SkBitmap bitmap_16 = |
+ TestImageLoader::LoadAndGetExtensionBitmap(extension.get(), "16.png", 16); |
ASSERT_FALSE(bitmap_16.empty()); |
// There is no image of size 32 defined in the extension manifest, so we |
// should expect manifest image of size 48 resized to size 32. |
SkBitmap bitmap_48_resized_to_32 = |
- GetTestBitmap(extension.get(), "48.png", 32); |
+ TestImageLoader::LoadAndGetExtensionBitmap(extension.get(), "48.png", 32); |
ASSERT_FALSE(bitmap_48_resized_to_32.empty()); |
IconImage image(browser_context(), |
@@ -293,7 +237,8 @@ TEST_F(ExtensionIconImageTest, FallbackToSmallerWhenNoBigger) { |
// Load images we expect to find as representations in icon_image, so we |
// can later use them to validate icon_image. |
- SkBitmap bitmap_48 = GetTestBitmap(extension.get(), "48.png", 48); |
+ SkBitmap bitmap_48 = |
+ TestImageLoader::LoadAndGetExtensionBitmap(extension.get(), "48.png", 48); |
ASSERT_FALSE(bitmap_48.empty()); |
IconImage image(browser_context(), |
@@ -330,7 +275,8 @@ TEST_F(ExtensionIconImageTest, FallbackToBigger) { |
// Load images we expect to find as representations in icon_image, so we |
// can later use them to validate icon_image. |
- SkBitmap bitmap_24 = GetTestBitmap(extension.get(), "24.png", 24); |
+ SkBitmap bitmap_24 = |
+ TestImageLoader::LoadAndGetExtensionBitmap(extension.get(), "24.png", 24); |
ASSERT_FALSE(bitmap_24.empty()); |
IconImage image(browser_context(), |
@@ -522,7 +468,8 @@ TEST_F(ExtensionIconImageTest, IconImageDestruction) { |
// Load images we expect to find as representations in icon_image, so we |
// can later use them to validate icon_image. |
- SkBitmap bitmap_16 = GetTestBitmap(extension.get(), "16.png", 16); |
+ SkBitmap bitmap_16 = |
+ TestImageLoader::LoadAndGetExtensionBitmap(extension.get(), "16.png", 16); |
ASSERT_FALSE(bitmap_16.empty()); |
scoped_ptr<IconImage> image( |