blob: 4b9f386cb394c98638ffa8c1ea8d2f9eafb582aa [file] [log] [blame]
// Copyright (c) 2012 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.
var testRunner = testRunner || {};
var accessibilityController = accessibilityController || {};
var gamepadController = gamepadController || {};
var eventSender = eventSender || {};
var textInputController = textInputController || {};
(function() {
native function GetWorkerThreadCount();
native function NotifyDone();
native function OverridePreference();
native function SetDumpAsText();
native function SetDumpChildFramesAsText();
native function SetPrinting();
native function SetShouldStayOnPageAfterHandlingBeforeUnload();
native function SetWaitUntilDone();
native function NotImplemented();
var DefaultHandler = function(name) {
var handler = {
get: function(receiver, property) {
NotImplemented(name, property);
return function() {}
}
}
return Proxy.create(handler);
}
var TestRunner = function() {
Object.defineProperty(this,
"workerThreadCount",
{value: GetWorkerThreadCount});
Object.defineProperty(this,
"overridePreference",
{value: OverridePreference});
Object.defineProperty(this, "notifyDone", {value: NotifyDone});
Object.defineProperty(this, "dumpAsText", {value: SetDumpAsText});
Object.defineProperty(this,
"dumpChildFramesAsText",
{value: SetDumpChildFramesAsText});
Object.defineProperty(this, "setPrinting", {value: SetPrinting});
Object.defineProperty(
this,
"setShouldStayOnPageAfterHandlingBeforeUnload",
{value: SetShouldStayOnPageAfterHandlingBeforeUnload});
Object.defineProperty(this, "waitUntilDone", {value: SetWaitUntilDone});
}
TestRunner.prototype = DefaultHandler("testRunner");
testRunner = new TestRunner();
var AccessibilityController = function() {}
AccessibilityController.prototype = DefaultHandler("accessibilityController");
accessibilityController = new AccessibilityController();
var GamepadController = function() {}
GamepadController.prototype = DefaultHandler("gamepadController");
gamepadController = new GamepadController();
var EventSender = function() {}
EventSender.prototype = DefaultHandler("eventSender");
eventSender = new EventSender();
var TextInputController = function() {}
TextInputController.prototype = DefaultHandler("textInputController");
textInputController = new TextInputController();
})();