| #!/bin/sh | |
| die () { echo "$@" ; exit 1; } | |
| \. ../../nvm.sh | |
| nvm unalias default || die 'unable to unalias default' | |
| NVM_TEST_VERSION=v0.10.7 | |
| # Remove the stuff we're clobbering. | |
| [ -e ../../$NVM_TEST_VERSION ] && rm -R ../../$NVM_TEST_VERSION | |
| # Install from binary | |
| nvm install -b $NVM_TEST_VERSION || die "install $NVM_TEST_VERSION failed" | |
| # Check | |
| [ -d ../../$NVM_TEST_VERSION ] | |
| nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION || die "'nvm run $NVM_TEST_VERSION --version | grep $NVM_TEST_VERSION' failed" | |
| # ensure default is set | |
| NVM_CURRENT_DEFAULT="$(nvm_alias default)" | |
| [ "$NVM_CURRENT_DEFAULT" = "$NVM_TEST_VERSION" ] || die "wrong default alias: $(nvm alias)" | |
| # Falls back to source but if -b is set fails binary download. | |
| OUTPUT="$(nvm install -b 9.0.0 2>&1)" | |
| EXPECTED_OUTPUT='Binary download failed. Download from source aborted.' | |
| if [ "${OUTPUT#*$EXPECTED_OUTPUT}" = "${OUTPUT}" ]; then | |
| die "No source binary flag is active and should have returned >${EXPECTED_OUTPUT}<. Instead it returned >${OUTPUT}<" | |
| fi | |
| # Falls back to source but if -b is not set. | |
| OUTPUT="$(nvm install 9.0.0 2>&1)" | |
| EXPECTED_OUTPUT='Binary download failed. Download from source aborted.' | |
| if [ "${OUTPUT#*$EXPECTED_OUTPUT}" != "${OUTPUT}" ]; then | |
| die "No source binary flag is active and should have returned >${EXPECTED_OUTPUT}<. Instead it returned >${OUTPUT}<" | |
| fi |