--- /dev/null
+// Copyright (c) 2013 The Chromium Embedded Framework 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 CEF_TESTS_SHARED_BROWSER_RESOURCE_UTIL_H_
+#define CEF_TESTS_SHARED_BROWSER_RESOURCE_UTIL_H_
+#pragma once
+
+#include <string>
+#include "include/cef_image.h"
+#include "include/cef_stream.h"
+
+#if defined(OS_WIN)
+#include "include/wrapper/cef_resource_manager.h"
+#endif
+
+namespace client {
+
+#if defined(OS_POSIX)
+// Returns the directory containing resource files.
+bool GetResourceDir(std::string& dir);
+#endif
+
+// Retrieve a resource as a string.
+bool LoadBinaryResource(const char* resource_name, std::string& resource_data);
+
+// Retrieve a resource as a steam reader.
+CefRefPtr<CefStreamReader> GetBinaryResourceReader(const char* resource_name);
+
+#if defined(OS_WIN)
+// Create a new provider for loading binary resources.
+CefResourceManager::Provider* CreateBinaryResourceProvider(
+ const std::string& url_path);
+#endif
+
+// Load an image icon at different scale factors. The image representations are
+// expected to be 16 DIP in size. For example, if |icon_name| is "image" then
+// the expected file names are "image.1x.png" for the 1x scale image (16 pixels)
+// and "image.2x.png" for the 2x scale image (32 pixels).
+CefRefPtr<CefImage> LoadImageIcon(const char* icon_name);
+
+} // namespace client
+
+#endif // CEF_TESTS_SHARED_BROWSER_RESOURCE_UTIL_H_