node/test/parallel/test-process-execve-no-args.js
Allon Murienik a480d998d9
process: make execve's args argument optional
Align the code with the documentation and similar methods used to
execute os commands - the `args` argument should be optional, and if
omitted, treated as an empty array (`[]`).

Fixes: https://github.com/nodejs/node/issues/58411
PR-URL: https://github.com/nodejs/node/pull/58412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
2025-07-26 02:35:57 +00:00

25 lines
774 B
JavaScript

'use strict';
const { skip, isWindows, isIBMi } = require('../common');
const { fail } = require('assert');
const { isMainThread } = require('worker_threads');
const { dirname, join } = require('path');
const { existsSync } = require('fs');
if (!isMainThread) {
skip('process.execve is not available in Workers');
} else if (isWindows || isIBMi) {
skip('process.execve is not available in Windows or IBM i');
}
// Get full path to the executable used for the test
const executable = join(dirname(process.execPath), 'nop');
// Sanity check that the binary exists
if (!existsSync(executable)) {
skip(executable + ' binary is not available');
}
process.execve(executable);
// If process.execve succeeds, this should never be executed.
fail('process.execve failed');