import { ipcMain, webContents } from 'electron'; import { Observable } from 'rxjs'; import rxIpc from '../../src/main'; function testMain(...args) { return Observable.from(args); } function testError() { return new Observable((observer) => { observer.next(1); observer.next(2); observer.error('Test Error'); }); } ipcMain.on('main-run-command', (event) => { const results = []; rxIpc.runCommand('command-from-main', event.sender, 3, 2, 1) .subscribe( (data) => { results.push(data) }, (err) => { throw err; }, () => { event.sender.send('results-from-main', results); } ) }); rxIpc.registerListener('test-main', testMain); rxIpc.registerListener('test-error', testError);