summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js')
-rw-r--r--Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js b/Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js
new file mode 100644
index 0000000..2666167
--- /dev/null
+++ b/Source/WebCore/manual-tests/inspector-wrappers/inspector-wrappers-test-utils.js
@@ -0,0 +1,46 @@
+var truealert = window.alert; // we overwrite window.alert sometimes
+
+// Walk up the caller chain and try to find a reference to the Inspector's window
+function doAttack() {
+ var obj = doAttack.caller;
+ for (var i = 0;
+ i < 1000 && (obj.arguments.length == 0 || !obj.arguments[0].target);
+ i++) {
+ obj = obj.caller;
+ }
+ if (i == 1000) return;
+ var win = obj.arguments[0].target.ownerDocument.defaultView;
+ xhr(win);
+}
+
+function xhr(win) {
+ var xhr = new win.XMLHttpRequest();
+ var url = prompt("Test failed. To prove it, I'm going " +
+ "to make a cross-domain XMLHttpRequest. Where " +
+ "would you like me to send it?\n\nHint: You can " +
+ "also try a file:// URL.", "http://www.example.com/");
+ xhr.open("GET", url, false);
+ xhr.send();
+ truealert("Result:\n\n" + xhr.responseText);
+}
+
+function instructions(params) {
+ var str = "<p>This test tries to make a cross-domain XMLHttpRequest to " +
+ "check whether JavaScript object wrappers are working (bug 16837, bug 16011).</p>" +
+ "<p>View this page from an http:// URL to ensure that it's in a different " +
+ "origin from the Inspector.</p>" +
+ "<p>Instructions:</p>" +
+ "<ol>" +
+ "<li>Right click the box" +
+ "<img id=logo src='../resources/webkit-background.png'" +
+ "style='border: 1px solid black; display: block; margin: 1em;'>" +
+ "<li>Choose \"Inspect Element\" from the context menu";
+ if (params.console) {
+ str += "<li>Select the Console";
+ str += "<li>Type " + params.trigger + " into the console and hit Enter";
+ } else {
+ str += "<li>" + params.trigger;
+ }
+ str += "<li>If the test failed, a prompt will appear.</ol>";
+ document.write(str);
+}