You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
async function main() {
try {
const extensionDevelopmentPath = path.resolve(__dirname, '../../../');
const extensionTestsPath = path.resolve(__dirname, './suite/index');
const vscodeExecutablePath = await downloadAndUnzipVSCode('1.40.1');
const [cliPath, ...args] = resolveCliArgsFromVSCodeExecutablePath(vscodeExecutablePath);
// Use cp.spawn / cp.exec for custom setup
cp.spawnSync(
cliPath,
[...args, '--install-extension', '<EXTENSION-ID-OR-PATH-TO-VSIX>'],
{
encoding: 'utf-8',
stdio: 'inherit'
// --- BUG: MISSING shell: true option here
}
);
// Run the extension test
await runTests({
// Use the specified `code` executable
vscodeExecutablePath,
extensionDevelopmentPath,
extensionTestsPath
});
} catch (err) {
console.error('Failed to run tests');
process.exit(1);
}
}
The problem is that on Windows, the cli evaluates to %vscodeTestDir%\bin\Code that is not a Windows executable, but a bash shell script, so direct invocation using spanwSync fails. There must be shell: true option for the spawnSync that launches the command using windows command shell, that properly recognizes presence of Code.cmd and uses that.
Please correct the example in the extension development guide.
The text was updated successfully, but these errors were encountered:
Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.89.1. Please try upgrading to the latest version and checking whether this issue remains.
I started experiencing the same issue during vscode testing. For a long time, I had no issues, but my agent pool image updated and cp.spawnSync silently stopped installing the extension required.
Reproduces the error (agent pool vm):
OS Build: 22631.3593
Version of VSCode installed by runtest.js: 1.89.1
Powershell version: 5.1.22621.2506
Node version: v20.13.1
Does not reproduce the error (dev machine):
OS Build: 22631.3593
Version of VSCode installed by runtest.js: 1.89.1
Powershell version: 5.1.22621.2506
Node version: v20.11.0
Using the cp.spawnSyncshell: true option works as a workaround for me.
Does this issue occur when all extensions are disabled?: Yes
Steps to Reproduce:
The problem is that on Windows, the
cli
evaluates to%vscodeTestDir%\bin\Code
that is not a Windows executable, but a bash shell script, so direct invocation usingspanwSync
fails. There must beshell: true
option for thespawnSync
that launches the command using windows command shell, that properly recognizes presence ofCode.cmd
and uses that.Please correct the example in the extension development guide.
The text was updated successfully, but these errors were encountered: