Assert built-in prototype isolation

This commit is contained in:
Kevin Sawicki 2016-12-15 15:23:45 -08:00
parent ad3b837ad5
commit ea2273dde5
3 changed files with 14 additions and 4 deletions

View file

@ -1845,13 +1845,17 @@ describe('BrowserWindow module', function () {
preloadProperty: 'number',
pageProperty: 'undefined',
typeofRequire: 'function',
typeofProcess: 'object'
typeofProcess: 'object',
typeofArrayPush: 'function',
typeofFunctionApply: 'function',
},
pageContext: {
preloadProperty: 'undefined',
pageProperty: 'string',
typeofRequire: 'undefined',
typeofProcess: 'undefined'
typeofProcess: 'undefined',
typeofArrayPush: 'number',
typeofFunctionApply: 'boolean',
}
})
done()

View file

@ -8,7 +8,9 @@ window.addEventListener('message', (event) => {
preloadProperty: typeof window.foo,
pageProperty: typeof window.hello,
typeofRequire: typeof require,
typeofProcess: typeof process
typeofProcess: typeof process,
typeofArrayPush: typeof Array.prototype.push,
typeofFunctionApply: typeof Function.prototype.apply
},
pageContext: event.data
})

View file

@ -5,11 +5,15 @@
<title>Isolated World</title>
<script>
window.hello = 'world'
Array.prototype.push = 3
Function.prototype.apply = true
window.postMessage({
preloadProperty: typeof window.foo,
pageProperty: typeof window.hello,
typeofRequire: typeof require,
typeofProcess: typeof process
typeofProcess: typeof process,
typeofArrayPush: typeof Array.prototype.push,
typeofFunctionApply: typeof Function.prototype.apply
}, '*')
</script>
</head>