Use require('electron') in Electron's code

This commit is contained in:
Cheng Zhao 2015-11-12 18:28:04 +08:00
parent f9d7e7ce55
commit 1d1f911b09
71 changed files with 265 additions and 250 deletions

View file

@ -1,9 +1,8 @@
assert = require 'assert'
ipc = require 'ipc-renderer'
path = require 'path'
remote = require 'remote'
BrowserWindow = remote.require 'browser-window'
{ipcRenderer, remote} = require 'electron'
{ipcMain, BrowserWindow} = remote.require 'electron'
comparePaths = (path1, path2) ->
if process.platform is 'win32'
@ -17,8 +16,8 @@ describe 'ipc module', ->
describe 'remote.require', ->
it 'should returns same object for the same module', ->
dialog1 = remote.require 'dialog'
dialog2 = remote.require 'dialog'
dialog1 = remote.require 'electron'
dialog2 = remote.require 'electron'
assert.equal dialog1, dialog2
it 'should work when object contains id property', ->
@ -70,20 +69,20 @@ describe 'ipc module', ->
describe 'ipc.sender.send', ->
it 'should work when sending an object containing id property', (done) ->
obj = id: 1, name: 'ly'
ipc.once 'message', (event, message) ->
ipcRenderer.once 'message', (event, message) ->
assert.deepEqual message, obj
done()
ipc.send 'message', obj
ipcRenderer.send 'message', obj
describe 'ipc.sendSync', ->
it 'can be replied by setting event.returnValue', ->
msg = ipc.sendSync 'echo', 'test'
msg = ipcRenderer.sendSync 'echo', 'test'
assert.equal msg, 'test'
it 'does not crash when reply is not sent and browser is destroyed', (done) ->
@timeout 10000
w = new BrowserWindow(show: false)
remote.require('ipc-main').once 'send-sync-message', (event) ->
ipcMain.once 'send-sync-message', (event) ->
event.returnValue = null
w.destroy()
done()