#ifndef CEF_TESTS_CEFCLIENT_BROWSER_TEST_RUNNER_H_
#define CEF_TESTS_CEFCLIENT_BROWSER_TEST_RUNNER_H_
#pragma once
#include <set>
#include <string>
#include "include/cef_browser.h"
#include "include/cef_request.h"
#include "include/wrapper/cef_message_router.h"
#include "include/wrapper/cef_resource_manager.h"
namespace client {
namespace test_runner {
void RunTest(CefRefPtr<CefBrowser> browser, int id);
std::string DumpRequestContents(CefRefPtr<CefRequest> request);
CefRefPtr<CefStreamReader> GetDumpResponse(
CefRefPtr<CefRequest> request,
CefResponse::HeaderMap& response_headers);
std::string GetDataURI(const std::string& data, const std::string& mime_type);
std::string GetErrorString(cef_errorcode_t code);
typedef std::map<std::string, std::string> StringResourceMap;
void SetupResourceManager(CefRefPtr<CefResourceManager> resource_manager,
StringResourceMap* string_resource_map);
void Alert(CefRefPtr<CefBrowser> browser, const std::string& message);
bool IsTestURL(const std::string& url, const std::string& path);
typedef std::set<CefMessageRouterBrowserSide::Handler*> MessageHandlerSet;
void CreateMessageHandlers(MessageHandlerSet& handlers);
void RegisterSchemeHandlers();
CefRefPtr<CefResponseFilter> GetResourceResponseFilter(
CefRefPtr<CefBrowser> browser,
CefRefPtr<CefFrame> frame,
CefRefPtr<CefRequest> request,
CefRefPtr<CefResponse> response);
}
}
#endif