#ifndef CONTENT_SHELL_RENDERER_TEST_RUNNER_WEBTESTDELEGATE_H_
#define CONTENT_SHELL_RENDERER_TEST_RUNNER_WEBTESTDELEGATE_H_
#include <string>
#include "third_party/WebKit/public/platform/WebScreenOrientation.h"
#include "third_party/WebKit/public/platform/WebString.h"
#include "third_party/WebKit/public/platform/WebURL.h"
#include "third_party/WebKit/public/platform/WebVector.h"
#define WEBTESTRUNNER_NEW_HISTORY_CAPTURE
namespace blink {
class WebDeviceMotionData;
class WebDeviceOrientationData;
class WebFrame;
class WebGamepad;
class WebGamepads;
class WebHistoryItem;
struct WebRect;
struct WebSize;
struct WebURLError;
}
namespace content {
struct TestPreferences;
}
namespace WebTestRunner {
class WebTask;
class WebTestProxyBase;
class WebTestDelegate {
public:
virtual void clearEditCommand() = 0;
virtual void setEditCommand(const std::string& name, const std::string& value) = 0;
virtual void setGamepadData(const blink::WebGamepads&) = 0;
virtual void didConnectGamepad(int index, const blink::WebGamepad&) = 0;
virtual void didDisconnectGamepad(int index, const blink::WebGamepad&) = 0;
virtual void setDeviceMotionData(const blink::WebDeviceMotionData&) = 0;
virtual void setDeviceOrientationData(const blink::WebDeviceOrientationData&) = 0;
virtual void setScreenOrientation(const blink::WebScreenOrientation&) = 0;
virtual void printMessage(const std::string& message) = 0;
virtual void postTask(WebTask*) = 0;
virtual void postDelayedTask(WebTask*, long long ms) = 0;
virtual blink::WebString registerIsolatedFileSystem(const blink::WebVector<blink::WebString>& absoluteFilenames) = 0;
virtual long long getCurrentTimeInMillisecond() = 0;
virtual blink::WebString getAbsoluteWebStringFromUTF8Path(const std::string& path) = 0;
virtual blink::WebURL localFileToDataURL(const blink::WebURL&) = 0;
virtual blink::WebURL rewriteLayoutTestsURL(const std::string& utf8URL) = 0;
virtual content::TestPreferences* preferences() = 0;
virtual void applyPreferences() = 0;
virtual void useUnfortunateSynchronousResizeMode(bool) = 0;
virtual void enableAutoResizeMode(const blink::WebSize& minSize, const blink::WebSize& maxSize) = 0;
virtual void disableAutoResizeMode(const blink::WebSize&) = 0;
virtual void clearDevToolsLocalStorage() = 0;
virtual void showDevTools(const std::string& settings) = 0;
virtual void closeDevTools() = 0;
virtual void evaluateInWebInspector(long callID, const std::string& script) = 0;
virtual void clearAllDatabases() = 0;
virtual void setDatabaseQuota(int) = 0;
virtual void setDeviceScaleFactor(float) = 0;
virtual void setFocus(WebTestProxyBase*, bool) = 0;
virtual void setAcceptAllCookies(bool) = 0;
virtual std::string pathToLocalResource(const std::string& resource) = 0;
virtual void setLocale(const std::string&) = 0;
virtual void testFinished() = 0;
virtual void closeRemainingWindows() = 0;
virtual void deleteAllCookies() = 0;
virtual int navigationEntryCount() = 0;
virtual void goToOffset(int offset) = 0;
virtual void reload() = 0;
virtual void loadURLForFrame(const blink::WebURL&, const std::string& frameName) = 0;
virtual bool allowExternalPages() = 0;
virtual void captureHistoryForWindow(WebTestProxyBase*, blink::WebVector<blink::WebHistoryItem>*, size_t* currentEntryIndex) = 0;
};
}
#endif