node/test/parallel/test-repl-save-load-load-dir.js
Dario Piotrowicz 910a8af2d2
test: refactor repl save-load tests
refactor the test/parallel/test-repl-save-load.js file by:
  - making the tests in the file self-contained
    (instead of all of them sharing the same REPL instance and
     constantly calling `.clear` on it)
  - clearly separating and commenting the various tests to make
    clearer what is being tested

PR-URL: https://github.com/nodejs/node/pull/58715
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2025-06-22 18:11:33 +00:00

36 lines
876 B
JavaScript

'use strict';
const common = require('../common');
const ArrayStream = require('../common/arraystream');
const assert = require('node:assert');
const repl = require('node:repl');
const tmpdir = require('../common/tmpdir');
tmpdir.refresh();
// Tests that an appropriate error is displayed if the user tries to load a directory instead of a file
const input = new ArrayStream();
const output = new ArrayStream();
const replServer = repl.start({
prompt: '',
input,
output,
allowBlockingCompletions: true,
});
// Some errors are passed to the domain, but do not callback
replServer._domain.on('error', assert.ifError);
const dirPath = tmpdir.path;
output.write = common.mustCall(function(data) {
assert.strictEqual(data, `Failed to load: ${dirPath} is not a valid file\n`);
output.write = () => {};
});
input.run([`.load ${dirPath}`]);
replServer.close();