2014-08-21 16:35:03 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
2015-01-02 14:45:46 +08:00
|
|
|
TEST_PWD=$(pwd)
|
|
|
|
TEST_DIR="$TEST_PWD/nvm_ls_current_tmp"
|
|
|
|
|
2015-02-22 18:16:55 +08:00
|
|
|
cleanup() { rm -rf "$TEST_DIR"; unset -f return_zero; alias node='node' ; unalias node; }
|
2015-01-02 14:45:46 +08:00
|
|
|
die () { echo $@ ; cleanup ; exit 1; }
|
2014-08-21 16:35:03 +08:00
|
|
|
|
|
|
|
. ../../../nvm.sh
|
|
|
|
|
|
|
|
return_zero () { return 0; }
|
|
|
|
|
2014-09-16 23:35:48 +08:00
|
|
|
[ "$(nvm deactivate > /dev/null 2>&1 ; nvm_ls_current)" = "system" ] || die 'when deactivated, did not return "system"'
|
2014-08-21 16:35:03 +08:00
|
|
|
|
|
|
|
rm -rf "$TEST_DIR"
|
|
|
|
mkdir "$TEST_DIR"
|
2015-01-02 12:51:59 +08:00
|
|
|
ln -s "$(command which which)" "$TEST_DIR/which"
|
|
|
|
ln -s "$(command which dirname)" "$TEST_DIR/dirname"
|
2014-08-21 16:35:03 +08:00
|
|
|
|
|
|
|
[ "$(PATH="$TEST_DIR" nvm_ls_current)" = "none" ] || die 'when node not installed, nvm_ls_current did not return "none"'
|
|
|
|
[ "@$(PATH="$TEST_DIR" nvm_ls_current 2> /dev/stdout 1> /dev/null)@" = "@@" ] || die 'when node not installed, nvm_ls_current returned error output'
|
|
|
|
|
|
|
|
echo "#!/bin/bash" > "$TEST_DIR/node"
|
|
|
|
echo "echo 'VERSION FOO!'" > "$TEST_DIR/node"
|
|
|
|
chmod a+x "$TEST_DIR/node"
|
|
|
|
|
|
|
|
[ "$(alias nvm_tree_contains_path='return_zero' && PATH="$TEST_DIR" nvm_ls_current)" = "VERSION FOO!" ] || die 'when activated, did not return nvm node version'
|
|
|
|
|
2015-01-02 14:45:46 +08:00
|
|
|
alias node='node --harmony'
|
|
|
|
[ "$(alias nvm_tree_contains_path='return_zero' && PATH="$TEST_DIR" nvm_ls_current)" = "VERSION FOO!" ] || die 'when activated and node aliased, did not return nvm node version'
|
2014-08-21 16:35:03 +08:00
|
|
|
|
2015-01-02 14:45:46 +08:00
|
|
|
cleanup
|