mirror of
https://github.com/nvm-sh/nvm.git
synced 2025-09-18 22:23:51 +00:00
[Refactor] extract “get default packages” logic to nvm_get_default_packages
This commit is contained in:
76
test/fast/Unit tests/nvm_get_default_packages
Executable file
76
test/fast/Unit tests/nvm_get_default_packages
Executable file
@@ -0,0 +1,76 @@
|
||||
#!/bin/sh
|
||||
|
||||
FILE="$NVM_DIR/default-packages"
|
||||
\. ../../../nvm.sh
|
||||
|
||||
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
|
||||
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 "3: 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 "4: expected default packages >${EXPECTED_PKGS}<; got >${DEFAULT_PKGS}<"
|
||||
|
||||
touch $FILE
|
||||
|
||||
cleanup
|
@@ -21,7 +21,7 @@ cleanup () {
|
||||
|
||||
setup
|
||||
|
||||
\. ../../../nvm.sh
|
||||
\. ../../nvm.sh
|
||||
|
||||
cat > $FILE << EOF
|
||||
rimraf
|
||||
@@ -45,7 +45,7 @@ cleanup
|
||||
|
||||
setup
|
||||
|
||||
\. ../../../nvm.sh
|
||||
\. ../../nvm.sh
|
||||
|
||||
cat > $FILE << EOF
|
||||
rimraf
|
Reference in New Issue
Block a user