mirror of
https://github.com/nodejs/node.git
synced 2026-11-09 15:11:11 -05:00
Signed-off-by: Aviv Keller <me@aviv.sh> PR-URL: https://github.com/nodejs/node/pull/64034 Fixes: https://github.com/nodejs/node/issues/64523 Closes: https://github.com/nodejs/node/pull/64534 Fixes: https://github.com/nodejs/node/issues/39387 Closes: https://github.com/nodejs/node/pull/39392 Fixes: https://github.com/nodejs/node/issues/61390 Fixes: https://github.com/nodejs/node/issues/63126 Fixes: https://github.com/nodejs/node/issues/38503 Fixes: https://github.com/nodejs/node/issues/37445 Fixes: https://github.com/nodejs/node/issues/38145 Fixes: https://github.com/nodejs/node/issues/33369 Fixes: https://github.com/nodejs/node/issues/48131 Fixes: https://github.com/nodejs/node/issues/8309 Fixes: https://github.com/nodejs/node/issues/39689 Fixes: https://github.com/nodejs/node/issues/18931 Reviewed-By: Dario Piotrowicz <dario.piotrowicz@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com>
30 lines
838 B
JavaScript
30 lines
838 B
JavaScript
import * as common from '../common/index.mjs';
|
|
import * as fixtures from '../common/fixtures.mjs';
|
|
import assert from 'node:assert';
|
|
import { startNewREPLServer } from '../common/repl.js';
|
|
|
|
if (process.env.TERM === 'dumb') {
|
|
common.skip('skipping - dumb terminal');
|
|
}
|
|
|
|
const command = `.load ${fixtures.path('repl-load-multiline.js')}`;
|
|
// eslint-disable-next-line no-control-regex
|
|
const terminalCodeRegex = /\x1b\[1G\x1b\[0J(?: |\| )\x1b\[[13]G/g;
|
|
|
|
const expected = `${command}
|
|
const getLunch = () =>
|
|
placeOrder('tacos')
|
|
.then(eat);
|
|
|
|
const placeOrder = (order) => Promise.resolve(order);
|
|
const eat = (food) => '<nom nom nom>';
|
|
|
|
undefined
|
|
`;
|
|
|
|
const { replServer, output, run } = startNewREPLServer();
|
|
|
|
await run(`${command}\n`);
|
|
assert.strictEqual(output.accumulator.replace(terminalCodeRegex, ''), expected);
|
|
replServer.close();
|