repl: Failed to save editor mode text in .save
Fixes: https://github.com/nodejs/node/issues/8142 PR-URL: https://github.com/nodejs/node/pull/8145 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
This commit is contained in:
parent
ccbb3c78cd
commit
f6a74345d1
@ -471,6 +471,7 @@ function REPLServer(prompt,
|
||||
|
||||
if (self.editorMode) {
|
||||
self.bufferedCommand += cmd + '\n';
|
||||
self.memory(cmd);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -29,6 +29,26 @@ putIn.run(['.save ' + saveFileName]);
|
||||
// the file should have what I wrote
|
||||
assert.equal(fs.readFileSync(saveFileName, 'utf8'), testFile.join('\n') + '\n');
|
||||
|
||||
{
|
||||
// save .editor mode code
|
||||
const cmds = [
|
||||
'function testSave() {',
|
||||
'return "saved";',
|
||||
'}'
|
||||
];
|
||||
const putIn = new common.ArrayStream();
|
||||
const replServer = repl.start('', putIn);
|
||||
|
||||
putIn.run(['.editor']);
|
||||
putIn.run(cmds);
|
||||
replServer.write('', {ctrl: true, name: 'd'});
|
||||
|
||||
putIn.run([`.save ${saveFileName}`]);
|
||||
replServer.close();
|
||||
assert.strictEqual(fs.readFileSync(saveFileName, 'utf8'),
|
||||
`${cmds.join('\n')}\n`);
|
||||
}
|
||||
|
||||
// make sure that the REPL data is "correct"
|
||||
// so when I load it back I know I'm good
|
||||
testMe.complete('inner.o', function(error, data) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user