diff --git a/nvm.sh b/nvm.sh index 0a656da..a9ccf26 100755 --- a/nvm.sh +++ b/nvm.sh @@ -4374,7 +4374,7 @@ nvm() { nvm_err 'System version of node not found.' return 127 elif [ "${VERSION}" = '∞' ]; then - nvm_err "The alias \"${2}\" leads to an infinite loop. Aborting." + nvm_err "The alias \"${provided_version}\" leads to an infinite loop. Aborting." return 8 fi diff --git a/test/fast/Running 'nvm which' with circular alias shows alias name b/test/fast/Running 'nvm which' with circular alias shows alias name new file mode 100755 index 0000000..d968c5d --- /dev/null +++ b/test/fast/Running 'nvm which' with circular alias shows alias name @@ -0,0 +1,24 @@ +#!/bin/sh + +set -ex + +die () { echo "$@" ; cleanup ; exit 1; } + +cleanup() { + rm -rf "$(nvm_alias_path)/circular_test" +} + +: nvm.sh +\. ../../nvm.sh + +\. ../common.sh + +nvm_make_alias circular_test circular_test + +try_err nvm which circular_test +EXPECTED_OUTPUT='The alias "circular_test" leads to an infinite loop. Aborting.' +[ "_${CAPTURED_STDERR}" = "_${EXPECTED_OUTPUT}" ] \ + || die "'nvm which circular_test' did not output >${EXPECTED_OUTPUT}<; got >${CAPTURED_STDERR}<" +[ "_$CAPTURED_EXIT_CODE" = "_8" ] || die "Expected exit code 8; got ${CAPTURED_EXIT_CODE}" + +cleanup