diff --git a/test/fast/Aliases/nvm_list_aliases works with LTS aliases b/test/fast/Aliases/nvm_list_aliases works with LTS aliases index d398718..058a915 100755 --- a/test/fast/Aliases/nvm_list_aliases works with LTS aliases +++ b/test/fast/Aliases/nvm_list_aliases works with LTS aliases @@ -13,6 +13,8 @@ nvm_alias_path() { nvm_echo "../../../alias" } +nvm ls-remote >/dev/null || die 'nvm ls-remote (to populate LTS aliases) failed' + MOCKS_DIR="../Unit tests/mocks" EXPECTED_OUTPUT="$(cat "$MOCKS_DIR/lts-star.txt")" diff --git a/test/fast/Unit tests/nvm ls-remote b/test/fast/Unit tests/nvm ls-remote index 933b36d..683fe92 100755 --- a/test/fast/Unit tests/nvm ls-remote +++ b/test/fast/Unit tests/nvm ls-remote @@ -22,6 +22,40 @@ nvm deactivate 2>/dev/null || die 'unable to deactivate' \. ../../common.sh +MOCKS_DIR="$PWD/mocks" + +nvm_download() { + if [ "$*" = "-L -s $(nvm_get_mirror node std)/index.tab -o -" ]; then + cat "$MOCKS_DIR/nodejs.org-dist-index.tab" + return + fi + return 42 +} + +EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote lts.txt" +OUTPUT="$(nvm ls-remote --lts | sed 's/[ \t]*$//')" +EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" +[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm ls-remote --lts did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" + +EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote lts.txt" +OUTPUT="$(nvm ls-remote "lts/*" | sed 's/[ \t]*$//')" +EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" +[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm ls-remote lts/* did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" + +MOCKS_DIR="$PWD/mocks" +LTS_NAMES_PATH="${MOCKS_DIR}/LTS_names.txt" +LTS_LIST="$(cat "${LTS_NAMES_PATH}" | tail -n +2)" + +INDEX=1 +printf '%s\n' "${LTS_LIST}" | while IFS= read -r LTS; do + ACTUAL="$(nvm ls-remote "lts/-${INDEX}" | sed 's/[ \t]*$//')" + MESSAGE="for lts/-${INDEX} (${LTS})" + EXPECTED="$(nvm ls-remote "lts/${LTS}" | sed 's/[ \t]*$//')" + [ "${ACTUAL}" = "${EXPECTED}" ] || die "${MESSAGE}: expected >${EXPECTED}<, got >${ACTUAL}<" + + INDEX=$(($INDEX + 1)) +done + REMOTE="$PWD/mocks/nvm_ls_remote.txt" nvm_ls_remote() { cat "$REMOTE" @@ -31,39 +65,9 @@ nvm_ls_remote_iojs() { cat "$REMOTE_IOJS" } -MOCKS_DIR="$PWD/mocks" - EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote.txt" OUTPUT="$(nvm ls-remote | sed 's/[ \t]*$//')" EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" [ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "bare nvm ls-remote did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" -EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote lts.txt" -OUTPUT="$(nvm ls-remote --lts="*" | sed 's/[ \t]*$//')" -EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" -[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm ls-remote --lts=* did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" - -EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote lts.txt" -OUTPUT="$(nvm ls-remote "lts/*" | sed 's/[ \t]*$//')" -EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" -[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm ls-remote lts/* did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" - -EXPECTED_OUTPUT_PATH="${MOCKS_DIR}/nvm ls-remote lts.txt" -OUTPUT="$(nvm ls-remote "lts/-1" | sed 's/[ \t]*$//')" -EXPECTED_OUTPUT="$(cat "$EXPECTED_OUTPUT_PATH" | sed 's/[ \t]*$//' )" -[ "_$OUTPUT" = "_$EXPECTED_OUTPUT" ] || die "nvm ls-remote lts/* did not output expected sorted versions; got $(echo ">$OUTPUT<") expected $(echo ">$EXPECTED_OUTPUT<")" - -LTS_NAMES_PATH="${MOCKS_DIR}/LTS_names.txt" -LTS_LIST="$(cat "${LTS_NAMES_PATH}" | tail -n +2)" - -INDEX=1 -for LTS in $LTS_LIST; do - ACTUAL="$(nvm ls-remote "lts/-${INDEX}" | sed 's/[ \t]*$//')" - MESSAGE="for lts/-${INDEX} / ${LTS}" - EXPECTED="$(nvm ls-remote "lts/${LTS}" | sed 's/[ \t]*$//')" - [ "${ACTUAL}" = "${EXPECTED}" ] || die "${MESSAGE}: expected >${EXPECTED}<, got >${ACTUAL}<" - - INDEX=$(($INDEX + 1)) -done - cleanup diff --git a/test/fast/Unit tests/nvm_normalize_lts b/test/fast/Unit tests/nvm_normalize_lts index 7ac8f4a..0844f95 100755 --- a/test/fast/Unit tests/nvm_normalize_lts +++ b/test/fast/Unit tests/nvm_normalize_lts @@ -28,9 +28,9 @@ LTS_NAMES_PATH="${MOCKS_DIR}/LTS_names.txt" LTS_LIST="$(cat "${LTS_NAMES_PATH}" | tail -n +2)" INDEX=1 -for LTS in $LTS_LIST; do +printf '%s\n' "${LTS_LIST}" | while IFS= read -r LTS; do ACTUAL="$(nvm_normalize_lts "lts/-${INDEX}")" - MESSAGE="for lts/-${INDEX}" + MESSAGE="for lts/-${INDEX} (${LTS})" EXPECTED="lts/$(echo "${LTS_LIST}" | tail -n +${INDEX} | head -n1)" [ "${ACTUAL}" = "${EXPECTED}" ] || die "${MESSAGE}: expected >${EXPECTED}<, got >${ACTUAL}<"