blob: 2049c548ed75f5391bee761b583bfc5b58de0c42 [file] [log] [blame]
<!DOCTYPE html>
<body>
<script src="../../resources/js-test-pre.js"></script>
<script>
description('Make sure wrappers are setup using the window the property came from, instead of the lexical global object.');
var frame = document.createElement('iframe');
document.body.appendChild(frame);
var inner = frame.contentWindow;
window.Object.prototype.isInner = false;
inner.Object.prototype.isInner = true;
var pathsToTest = [
'HTMLElement',
'Window',
'close',
'console',
'document',
'document.body',
'document.childNodes',
'navigator',
'postMessage',
'window',
];
function testPath(path) {
shouldBeTrue('inner.' + path + '.isInner');
shouldBeTrue('inner.' + path + '.constructor.isInner');
shouldBeTrue('inner.' + path + '.constructor.prototype.isInner');
shouldBeTrue('inner.' + path + '.__proto__.isInner');
}
pathsToTest.forEach(testPath);
</script>
<script src="../../resources/js-test-post.js"></script>
</body>