2025-01-07 07:24:20 +01:00
|
|
|
'use strict';
|
|
|
|
|
2025-04-18 06:07:51 -05:00
|
|
|
const { mustNotCall, skip, isWindows, isIBMi } = require('../common');
|
2025-01-07 07:24:20 +01:00
|
|
|
const { strictEqual } = require('assert');
|
|
|
|
const { isMainThread } = require('worker_threads');
|
|
|
|
|
|
|
|
if (!isMainThread) {
|
|
|
|
skip('process.execve is not available in Workers');
|
2025-04-18 06:07:51 -05:00
|
|
|
} else if (isWindows || isIBMi) {
|
|
|
|
skip('process.execve is not available in Windows or IBM i');
|
2025-01-07 07:24:20 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
if (process.argv[2] === 'replaced') {
|
|
|
|
strictEqual(process.argv[2], 'replaced');
|
|
|
|
} else {
|
|
|
|
process.on('exit', mustNotCall());
|
|
|
|
process.execve(process.execPath, [process.execPath, __filename, 'replaced'], process.env);
|
|
|
|
}
|