Bug 989025 - WebConsole breaks when trying to autocomplete in objects from different domains; r=past
This commit is contained in:
@@ -110,6 +110,7 @@ support-files =
|
|||||||
test-bug-952277-highlight-nodes-in-vview.html
|
test-bug-952277-highlight-nodes-in-vview.html
|
||||||
test-bug-609872-cd-iframe-parent.html
|
test-bug-609872-cd-iframe-parent.html
|
||||||
test-bug-609872-cd-iframe-child.html
|
test-bug-609872-cd-iframe-child.html
|
||||||
|
test-bug-989025-iframe-parent.html
|
||||||
|
|
||||||
[browser_bug664688_sandbox_update_after_navigation.js]
|
[browser_bug664688_sandbox_update_after_navigation.js]
|
||||||
[browser_bug_638949_copy_link_location.js]
|
[browser_bug_638949_copy_link_location.js]
|
||||||
@@ -277,3 +278,4 @@ run-if = os == "mac"
|
|||||||
[browser_webconsole_start_netmon_first.js]
|
[browser_webconsole_start_netmon_first.js]
|
||||||
[browser_webconsole_console_trace_duplicates.js]
|
[browser_webconsole_console_trace_duplicates.js]
|
||||||
[browser_webconsole_cd_iframe.js]
|
[browser_webconsole_cd_iframe.js]
|
||||||
|
[browser_webconsole_autocomplete_crossdomain_iframe.js]
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
/* Any copyright is dedicated to the Public Domain.
|
||||||
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
||||||
|
|
||||||
|
// Test that autocomplete doesn't break when trying to reach into objects from
|
||||||
|
// a different domain, bug 989025.
|
||||||
|
|
||||||
|
function test() {
|
||||||
|
let hud;
|
||||||
|
|
||||||
|
const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-bug-989025-iframe-parent.html";
|
||||||
|
|
||||||
|
Task.spawn(function*() {
|
||||||
|
const {tab} = yield loadTab(TEST_URI);
|
||||||
|
hud = yield openConsole(tab);
|
||||||
|
|
||||||
|
hud.jsterm.execute('document.title');
|
||||||
|
|
||||||
|
yield waitForMessages({
|
||||||
|
webconsole: hud,
|
||||||
|
messages: [{
|
||||||
|
text: "989025 - iframe parent",
|
||||||
|
category: CATEGORY_OUTPUT,
|
||||||
|
}],
|
||||||
|
});
|
||||||
|
|
||||||
|
let autocompleteUpdated = hud.jsterm.once("autocomplete-updated");
|
||||||
|
|
||||||
|
hud.jsterm.setInputValue("window[0].document");
|
||||||
|
executeSoon(() => {
|
||||||
|
EventUtils.synthesizeKey(".", {});
|
||||||
|
});
|
||||||
|
|
||||||
|
yield autocompleteUpdated;
|
||||||
|
|
||||||
|
hud.jsterm.setInputValue("window[0].document.title");
|
||||||
|
EventUtils.synthesizeKey("VK_RETURN", {});
|
||||||
|
|
||||||
|
yield waitForMessages({
|
||||||
|
webconsole: hud,
|
||||||
|
messages: [{
|
||||||
|
text: "Permission denied",
|
||||||
|
category: CATEGORY_OUTPUT,
|
||||||
|
severity: SEVERITY_ERROR,
|
||||||
|
}],
|
||||||
|
});
|
||||||
|
|
||||||
|
hud.jsterm.execute("window.location");
|
||||||
|
|
||||||
|
yield waitForMessages({
|
||||||
|
webconsole: hud,
|
||||||
|
messages: [{
|
||||||
|
text: "test-bug-989025-iframe-parent.html",
|
||||||
|
category: CATEGORY_OUTPUT,
|
||||||
|
}],
|
||||||
|
});
|
||||||
|
|
||||||
|
yield closeConsole(tab);
|
||||||
|
}).then(finishTest);
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>test for bug 989025 - iframe parent</title>
|
||||||
|
<!-- Any copyright is dedicated to the Public Domain.
|
||||||
|
http://creativecommons.org/publicdomain/zero/1.0/ -->
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p>test for bug 989025 - iframe parent</p>
|
||||||
|
<iframe src="http://mochi.test:8888/browser/browser/devtools/webconsole/test/test-bug-609872-cd-iframe-child.html"></iframe>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1098,7 +1098,7 @@ let DebuggerEnvironmentSupport = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
exports.JSPropertyProvider = JSPropertyProvider;
|
exports.JSPropertyProvider = DevToolsUtils.makeInfallible(JSPropertyProvider);
|
||||||
})(WebConsoleUtils);
|
})(WebConsoleUtils);
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
Reference in New Issue
Block a user