#!/bin/sh

\. ../../../nvm.sh

FILE="$NVM_DIR/default-packages"

die () { echo "$@" ; cleanup ; exit 1; }
setup () {
  if [ -f $FILE ]; then
    ORIG_DEFAULT_PACKAGES=$(cat $FILE)
    mkdir -p ./tmp/ ||:
    mv $FILE ./tmp/default-packages ||:
  fi
  touch $FILE
}
cleanup () {
  if [ "$ORIG_DEFAULT_PACKAGES" != "" ]; then
    rm -rf ./tmp/
    echo "$ORIG_DEFAULT_PACKAGES" > $FILE
  fi
}

setup

cat > $FILE << EOF
rimraf
object-inspect@1.0.2

# commented-package

stevemao/left-pad
EOF

DEFAULT_PKGS="$(nvm_get_default_packages)"
EXPECTED_PKGS='rimraf object-inspect@1.0.2 stevemao/left-pad'
[ "${DEFAULT_PKGS}" = "${EXPECTED_PKGS}" ] || die "1: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"

cleanup

setup

cat > $FILE << EOF
rimraf
not~a~package~name
mkdirp
EOF

DEFAULT_PKGS="$(nvm_get_default_packages)"
EXPECTED_PKGS='rimraf not~a~package~name mkdirp'
[ "${DEFAULT_PKGS}" = "${EXPECTED_PKGS}" ] || die "2: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"

cleanup

setup

cat > $FILE << EOF
rimraf
not~a~package~name
mkdirp
EOF
printf %s "$(cat "${FILE}")" > $FILE # strip trailing newline

DEFAULT_PKGS="$(nvm_get_default_packages)"
EXPECTED_PKGS='rimraf not~a~package~name mkdirp'
[ "${DEFAULT_PKGS}" = "${EXPECTED_PKGS}" ] || die "3: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"

cleanup

setup

cat > $FILE << EOF
object-inspect @ 1.0.2
rimraf
EOF

DEFAULT_PKGS="$(nvm_get_default_packages 2>&1 >/dev/null)"
EXPECTED_PKGS="Only one package per line is allowed in the $FILE file. Please remove any lines with multiple space-separated values."
[ "${DEFAULT_PKGS}" = "${EXPECTED_PKGS}" ] || die "4: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"

cleanup

setup

rm -rf $FILE

DEFAULT_PKGS="$(nvm_get_default_packages)"
EXPECTED_PKGS=''
[ "${DEFAULT_PKGS}" = "${EXPECTED_PKGS}" ] || die "5: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"

touch $FILE

cleanup
