You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.5 KiB
44 lines
1.5 KiB
#!/bin/sh |
|
|
|
set -eux |
|
|
|
cleanup() { |
|
unset -f nvm_has_system_node nvm_print_npm_version |
|
} |
|
die() { echo "$@" ; cleanup ; exit 1; } |
|
|
|
\. ../../nvm.sh |
|
|
|
nvm_has_system_node() { return 0; } |
|
nvm_print_npm_version() { command printf ' (npm v1.2.3)'; } |
|
|
|
EXPECTED_OUTPUT="Now using system version of node: $(node -v)$(nvm_print_npm_version)" |
|
set +x # since stderr is needed |
|
OUTPUT="$(nvm use system 2>&1)" |
|
set -x |
|
[ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "Could not use system version of node. Got >${OUTPUT}<, expected >${EXPECTED_OUTPUT}<" |
|
|
|
EXPECTED_OUTPUT="" |
|
set +x # since stderr is needed |
|
OUTPUT="$(nvm use --silent system 2>&1 | tail -1)" |
|
set -x |
|
[ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "Could not use system version of node or --silent was not silent" |
|
|
|
nvm_has_system_node() { return 1; } |
|
nvm_print_npm_version() { command printf ''; } |
|
|
|
EXPECTED_OUTPUT="System version of node not found." |
|
set +x # since stderr is needed |
|
OUTPUT="$(nvm use system 2>&1 | tail -1)" |
|
set -x |
|
[ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "Did not report error, system node not found" |
|
|
|
nvm use system 2>&1 > /dev/null || [ $? -eq 127 ] || die "Did not return error code, system node not found" |
|
EXPECTED_OUTPUT="" |
|
set +x # since stderr is needed |
|
OUTPUT="$(nvm use --silent system 2>&1 | tail -1)" |
|
set -x |
|
[ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "Did not report error, system node not found or --silent was not silent" |
|
nvm use --silent system 2>&1 > /dev/null || [ $? -eq 127 ] || die "Did not return error code, system node not found or --silent was not silent" |
|
|
|
cleanup
|
|
|