#!/bin/sh \. ../../common.sh die () { echo "$@" ; exit 1; } : nvm.sh \. ../../../nvm.sh nvm deactivate >/dev/null 2>&1 CURRENT="$(nvm current)" [ "$CURRENT" = 'none' ] || [ "$CURRENT" = 'system' ] || die "nvm should be using none or system; got $CURRENT" nvm_ls_current() { echo 'none' } node() { return 1 } npm() { echo '1.2.3' } try_err nvm_install_latest_npm EXPECTED="Unable to obtain node version." [ "${CAPTURED_STDERR}" = "${EXPECTED}" ] || die "When node is unavailable, expected >${EXPECTED}<; got >${CAPTURED_STDERR}" node() { echo 'v4.5.6' } nvm_ls_current() { node --version } npm() { return 1 } try_err nvm_install_latest_npm EXPECTED="Unable to obtain npm version." [ "${CAPTURED_STDERR}" = "${EXPECTED}" ] || die "When node is available and npm is unavailable, expected >${EXPECTED}<; got >${CAPTURED_STDERR}" node() { echo 'v4.5.6' } nvm_ls_current() { echo 'system' } npm() { return 1 } try_err nvm_install_latest_npm EXPECTED="Unable to obtain npm version." [ "${CAPTURED_STDERR}" = "${EXPECTED}" ] || die "When node is system and npm is unavailable, expected >${EXPECTED}<; got >${CAPTURED_STDERR}"