Files
basilisk55/devtools/server/tests/unit/test_safe-getter.js
T

26 lines
772 B
JavaScript

function run_test() {
Components.utils.import("resource://gre/modules/jsdebugger.jsm");
addDebuggerToGlobal(this);
var g = testGlobal("test");
var dbg = new Debugger();
var gw = dbg.addDebuggee(g);
g.eval(`
// This is not a CCW.
Object.defineProperty(this, "bar", {
get: function() { return "bar"; },
configurable: true,
enumerable: true
});
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
// This is a CCW.
XPCOMUtils.defineLazyGetter(this, "foo", function() { return "foo"; });
`);
// Neither scripted getter should be considered safe.
assert(!DevToolsUtils.hasSafeGetter(gw.getOwnPropertyDescriptor("bar")));
assert(!DevToolsUtils.hasSafeGetter(gw.getOwnPropertyDescriptor("foo")));
}