Add test for #9387
This commit is contained in:
parent
6b5bd3b6ce
commit
5654ff0d43
5 changed files with 97 additions and 5 deletions
20
spec/fixtures/api/sandbox.html
vendored
20
spec/fixtures/api/sandbox.html
vendored
|
@ -13,13 +13,28 @@
|
|||
await timeout(100)
|
||||
}
|
||||
}
|
||||
if (window.opener) {
|
||||
|
||||
const [,test] = window.location.href.split('?')
|
||||
if (window.opener && test !== 'reload-remote') {
|
||||
window.callback = () => {
|
||||
opener.require('electron').ipcRenderer.send('answer', document.body.innerHTML)
|
||||
}
|
||||
} else {
|
||||
const {ipcRenderer} = require('electron')
|
||||
const {ipcRenderer, remote} = require('electron')
|
||||
const tests = {
|
||||
'reload-remote-child': () => {
|
||||
open(`${location.protocol}//${location.pathname}?reload-remote`)
|
||||
},
|
||||
'reload-remote': async () => {
|
||||
const p = ipcRenderer.sendSync('get-remote-module-path')
|
||||
const Hello = remote.require(p)
|
||||
if (!ipcRenderer.sendSync('reloaded')) {
|
||||
ipcRenderer.send('reload')
|
||||
return
|
||||
}
|
||||
await invokeGc()
|
||||
ipcRenderer.send('answer', new Hello().say())
|
||||
},
|
||||
'allocate-memory': async () => {
|
||||
await invokeGc()
|
||||
const {privateBytes: bytesBeforeOpen} = process.getProcessMemoryInfo()
|
||||
|
@ -95,7 +110,6 @@
|
|||
popup.close()
|
||||
}, false)
|
||||
|
||||
let [,test] = window.location.href.split('?')
|
||||
if (tests.hasOwnProperty(test))
|
||||
tests[test]()
|
||||
}
|
||||
|
|
6
spec/fixtures/module/hello-child.js
vendored
Normal file
6
spec/fixtures/module/hello-child.js
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
class Hello {
|
||||
say () {
|
||||
return 'hi child window'
|
||||
}
|
||||
}
|
||||
module.exports = Hello
|
6
spec/fixtures/module/hello.js
vendored
Normal file
6
spec/fixtures/module/hello.js
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
class Hello {
|
||||
say () {
|
||||
return 'hi'
|
||||
}
|
||||
}
|
||||
module.exports = Hello
|
2
spec/fixtures/module/preload-sandbox.js
vendored
2
spec/fixtures/module/preload-sandbox.js
vendored
|
@ -3,9 +3,9 @@
|
|||
const {ipcRenderer} = require('electron')
|
||||
window.ipcRenderer = ipcRenderer
|
||||
window.setImmediate = setImmediate
|
||||
window.require = require
|
||||
if (location.protocol === 'file:') {
|
||||
window.test = 'preload'
|
||||
window.require = require
|
||||
window.process = process
|
||||
} else if (location.href !== 'about:blank') {
|
||||
addEventListener('DOMContentLoaded', () => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue