'use strict'; const common = require('../common'); const assert = require('assert'); const child_process = require('child_process'); const p = child_process.spawn(process.execPath, [ '-e', 'vm = require("vm");' + 'context = vm.createContext({});' + 'try { vm.runInContext("throw new Error(\'boo\')", context); } ' + 'catch (e) { console.log(e.message); }' ]); p.stderr.on('data', function(data) { common.fail(`Unexpected stderr data: ${data}`); }); let output = ''; p.stdout.on('data', function(data) { output += data; }); process.on('exit', function() { assert.strictEqual(output.replace(/[\r\n]+/g, ''), 'boo'); });