blob: c1fb4425c130ab6ebd2c950f38bdb89d09e7e634 [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef EXTENSIONS_BROWSER_TEST_IMAGE_LOADER_H_
#define EXTENSIONS_BROWSER_TEST_IMAGE_LOADER_H_
#include "base/macros.h"
#include "base/run_loop.h"
#include "ui/gfx/image/image.h"
namespace extensions {
class Extension;
// Helper class for synchronously loading an extension image resource.
class TestImageLoader {
public:
TestImageLoader();
~TestImageLoader();
// Loads an image to be used in test from |extension|.
// The image will be loaded from the relative path |image_path|.
static SkBitmap LoadAndGetExtensionBitmap(const Extension* extension,
const std::string& image_path,
int size);
private:
void OnImageLoaded(const gfx::Image& image);
SkBitmap LoadAndGetBitmap(const Extension* extension,
const std::string& path,
int size);
gfx::Image image_;
base::Closure loader_message_loop_quit_;
bool waiting_;
bool image_loaded_;
DISALLOW_COPY_AND_ASSIGN(TestImageLoader);
};
} // namespace extensions
#endif // EXTENSIONS_BROWSER_TEST_IMAGE_LOADER_H_