mirror of https://github.com/lukechilds/node.git
Browse Source
Fixes: https://github.com/nodejs/node/issues/3544 PR-URL: https://github.com/nodejs/node/pull/5192 Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>process-exit-stdio-flushing
Rich Trott
9 years ago
1 changed files with 29 additions and 0 deletions
@ -0,0 +1,29 @@ |
|||||
|
'use strict'; |
||||
|
const common = require('../common'); |
||||
|
const assert = require('assert'); |
||||
|
const repl = require('repl'); |
||||
|
|
||||
|
{ |
||||
|
let evalCalledWithExpectedArgs = false; |
||||
|
|
||||
|
const options = { |
||||
|
eval: common.mustCall((cmd, context) => { |
||||
|
// Assertions here will not cause the test to exit with an error code
|
||||
|
// so set a boolean that is checked in process.on('exit',...) instead.
|
||||
|
evalCalledWithExpectedArgs = (cmd === 'foo\n' && context.foo === 'bar'); |
||||
|
}) |
||||
|
}; |
||||
|
|
||||
|
const r = repl.start(options); |
||||
|
r.context = {foo: 'bar'}; |
||||
|
|
||||
|
try { |
||||
|
r.write('foo\n'); |
||||
|
} finally { |
||||
|
r.write('.exit\n'); |
||||
|
} |
||||
|
|
||||
|
process.on('exit', () => { |
||||
|
assert(evalCalledWithExpectedArgs); |
||||
|
}); |
||||
|
} |
Loading…
Reference in new issue