Rubber-stamped by Brady Eidson.
[webbrowser.git] / LayoutTests / inspector / inspector-test.js
blobca0aa83d33b171c327e5a500d61b95ebef8e889b
1 var lastCallId = 0;
2 var callbacks = {};
4 if (window.layoutTestController) {
5     layoutTestController.dumpAsText();
6     layoutTestController.waitUntilDone();
9 function onload()
11     var outputElement = document.createElement("div");
12     outputElement.id = "output";
13     document.body.appendChild(outputElement);
15     var toInject = [];
16     for (var name in window) {
17         if (name.indexOf("frontend_") === 0 && typeof window[name] === "function")
18             toInject.push(window[name].toString());
19     }
20     evaluateInWebInspector(toInject.join("\n"), doit);
23 function evaluateInWebInspector(script, callback)
25     var callId = lastCallId++;
26     callbacks[callId] = callback;
27     if (window.layoutTestController)
28         layoutTestController.evaluateInWebInspector(callId, script);
31 function notifyDone()
33     evaluateInWebInspector("true", function() {
34         if (window.layoutTestController)
35             layoutTestController.notifyDone();
36     });
39 function output(text)
41     var output = document.getElementById("output");
42     output.appendChild(document.createTextNode(text));
43     output.appendChild(document.createElement("br"));
46 function didEvaluateForTestInFrontend(callId, jsonResult)
48     if (callbacks[callId]) {
49         callbacks[callId].call(this, JSON.parse(jsonResult));
50         delete callbacks[callId];
51     }