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
Describe the bug
When my jest config and srcs are under directory with .nvmrc, then the proper version of the node is not used for running jest tests. It used just the default.
To Reproduce
Have a project which uses nvm for managing node versions, have the "default" different from what is required by the test runner...try to run tests in vscode via your extension. The default node version is used, not the one specified by .nvmrc in the project directory.
Expected behavior
Test runner embraces nvmrc and node version specified in it.
Environment (please complete the following information):
Operating system: MacOS 14.3.1
Prerequisite
are you able to run jest from the command line? yes
Additional context
it works properly in IntelliJ
The text was updated successfully, but these errors were encountered:
This extension will start a non-login/non-interactive shell to run the jestCommandLine, therefore, the location of your nvm setting matters. For example, in zsh, if you put the nvm config/loading logic in .zshrc, it will only work for the interactive shells (the terminals). You might need to consider moving the nvm logic to .zshenv or changing the jest.env to login-shell, for example.
I think the following will work for pure nvm, though it should be in your workspace or folder settings as it'll only work if an .nvmrc file is available:
You'll need to replace $HOME with your home directory.
For running tests in debugging, I added the following to my .zshrc (or in something source'd by your .zshrc, because for some reason, it insists on using the system node:
if [[ $TERM_PROGRAM== vscode ]];thenfunctionzleenvnode() {
emulate -L zsh
setopt extendedglob
local MATCH
if [[ $LBUFFER=' /usr/bin/env'*||$LBUFFER=' cd '*'; /usr/bin/env'* ]];thenlocal NVM_NODE="$(whence node)"
LBUFFER="${LBUFFER//\/opt\/homebrew\/bin\/node/$NVM_NODE}"returnfi
}
autoload -U add-zle-hook-widget
add-zle-hook-widget -Uz line-finish zleenvnode
fi
This uses zsh features to modify the command just before it's executed in the integrated terminal.
Describe the bug
When my jest config and srcs are under directory with
.nvmrc
, then the proper version of the node is not used for running jest tests. It used just the default.To Reproduce
Have a project which uses
nvm
for managing node versions, have the "default" different from what is required by the test runner...try to run tests in vscode via your extension. The default node version is used, not the one specified by.nvmrc
in the project directory.Expected behavior
Test runner embraces nvmrc and node version specified in it.
Environment (please complete the following information):
Prerequisite
Additional context
The text was updated successfully, but these errors were encountered: