Fix missing remote object error when calling remote function created in preload script (#15444)
* fix: report wrong context error based on contextId * fix: destroyed remote renderer warning is now async
This commit is contained in:
parent
b2e1a93177
commit
a8f2646ba6
5 changed files with 54 additions and 21 deletions
|
@ -8,6 +8,7 @@ const { closeWindow } = require('./window-helpers')
|
|||
const { resolveGetters } = require('./assert-helpers')
|
||||
|
||||
const { remote, ipcRenderer } = require('electron')
|
||||
const { ipcMain, BrowserWindow } = remote
|
||||
const { expect } = chai
|
||||
|
||||
chai.use(dirtyChai)
|
||||
|
@ -512,4 +513,23 @@ describe('remote module', () => {
|
|||
}
|
||||
})
|
||||
})
|
||||
|
||||
describe('remote function in renderer', () => {
|
||||
afterEach(() => {
|
||||
ipcMain.removeAllListeners('done')
|
||||
})
|
||||
|
||||
it('works when created in preload script', (done) => {
|
||||
ipcMain.once('done', () => w.close())
|
||||
const preload = path.join(fixtures, 'module', 'preload-remote-function.js')
|
||||
w = new BrowserWindow({
|
||||
show: false,
|
||||
webPreferences: {
|
||||
preload: preload
|
||||
}
|
||||
})
|
||||
w.once('closed', () => done())
|
||||
w.loadURL('about:blank')
|
||||
})
|
||||
})
|
||||
})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue