mirror of
https://github.com/nvm-sh/nvm.git
synced 2026-07-18 21:08:23 +08:00
136 lines
5.4 KiB
Bash
Executable File
136 lines
5.4 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
cleanup() {
|
|
unset nvm_get_os
|
|
unset nvm_get_arch
|
|
}
|
|
|
|
die () { cleanup; echo "$@" ; exit 1; }
|
|
|
|
: nvm.sh
|
|
\. ../../../nvm.sh
|
|
|
|
[ "$(nvm_get_download_slug 2>/dev/null ; echo $?)" = '1' ] || die 'invalid flavor did not fail with exit code 1'
|
|
[ "$(nvm_get_download_slug 2>&1)" = 'supported flavors: node, iojs' ] || die 'invalid flavor did not fail with expected message'
|
|
|
|
[ "$(nvm_get_download_slug node 2>/dev/null ; echo $?)" = '2' ] || die 'invalid kind did not fail with exit code 2'
|
|
[ "$(nvm_get_download_slug node 2>&1)" = 'supported kinds: binary, source' ] || die 'invalid kind did not fail with expected message'
|
|
[ "$(nvm_get_download_slug iojs 2>/dev/null ; echo $?)" = '2' ] || die 'invalid kind did not fail with exit code 2'
|
|
[ "$(nvm_get_download_slug iojs 2>&1)" = 'supported kinds: binary, source' ] || die 'invalid kind did not fail with expected message'
|
|
|
|
nvm_get_os() {
|
|
echo omgOS
|
|
}
|
|
nvm_get_arch() {
|
|
echo nemesis
|
|
}
|
|
|
|
ACTUAL="$(nvm_get_download_slug node binary 1.2.3)"
|
|
EXPECTED='node-1.2.3-omgOS-nemesis'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 1.2.3)"
|
|
EXPECTED='iojs-1.2.3-omgOS-nemesis'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
ACTUAL="$(nvm_get_download_slug node source 1.2.3)"
|
|
EXPECTED="node-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs source 1.2.3)"
|
|
EXPECTED="iojs-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
nvm_get_arch() {
|
|
echo armv6l
|
|
}
|
|
ACTUAL="$(nvm_get_download_slug node binary 1.2.3)"
|
|
EXPECTED='node-1.2.3-omgOS-arm-pi'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 1.2.3)"
|
|
EXPECTED='iojs-1.2.3-omgOS-arm-pi'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
ACTUAL="$(nvm_get_download_slug node source 1.2.3)"
|
|
EXPECTED="node-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs source 1.2.3)"
|
|
EXPECTED="iojs-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
nvm_get_arch() {
|
|
echo armv7l
|
|
}
|
|
ACTUAL="$(nvm_get_download_slug node binary 1.2.3)"
|
|
EXPECTED='node-1.2.3-omgOS-arm-pi'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 1.2.3)"
|
|
EXPECTED='iojs-1.2.3-omgOS-arm-pi'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
ACTUAL="$(nvm_get_download_slug node source 1.2.3)"
|
|
EXPECTED="node-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs source 1.2.3)"
|
|
EXPECTED="iojs-1.2.3"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
nvm_get_os() {
|
|
echo darwin
|
|
}
|
|
nvm_get_arch() {
|
|
echo nemesis
|
|
}
|
|
ACTUAL="$(nvm_get_download_slug node binary 15.99.99)"
|
|
EXPECTED='node-15.99.99-darwin-nemesis'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 15.99.99)"
|
|
EXPECTED='iojs-15.99.99-darwin-nemesis'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
ACTUAL="$(nvm_get_download_slug node source 15.99.99)"
|
|
EXPECTED="node-15.99.99"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs source 15.99.99)"
|
|
EXPECTED="iojs-15.99.99"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
nvm_get_arch() {
|
|
echo arm64
|
|
}
|
|
ACTUAL="$(nvm_get_download_slug node binary 15.99.99)"
|
|
EXPECTED='node-15.99.99-darwin-x64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 15.99.99)"
|
|
EXPECTED='iojs-15.99.99-darwin-x64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
ACTUAL="$(nvm_get_download_slug node source 15.99.99)"
|
|
EXPECTED="node-15.99.99"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs source 15.99.99)"
|
|
EXPECTED="iojs-15.99.99"
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
|
|
REAL_OS="$(command uname -s 2>/dev/null || echo '')"
|
|
REAL_ARCH="$(command uname -m 2>/dev/null || echo '')"
|
|
if [ "${REAL_OS}" = "Darwin" ] && [ "${REAL_ARCH}" = "arm64" ]; then
|
|
# Node < 16 uses x64 on darwin-arm64
|
|
ACTUAL="$(nvm_get_download_slug node binary 14.21.3)"
|
|
EXPECTED='node-14.21.3-darwin-x64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug node binary 15.99.99)"
|
|
EXPECTED='node-15.99.99-darwin-x64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug iojs binary 15.99.99)"
|
|
EXPECTED='iojs-15.99.99-darwin-x64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
|
|
# Test Node >= 16 uses arm64 on darwin-arm64
|
|
ACTUAL="$(nvm_get_download_slug node binary 16.0.0)"
|
|
EXPECTED='node-16.0.0-darwin-arm64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
ACTUAL="$(nvm_get_download_slug node binary 18.0.0)"
|
|
EXPECTED='node-18.0.0-darwin-arm64'
|
|
[ "${ACTUAL}" = "${EXPECTED}" ] || die "expected >${EXPECTED}<, got >${ACTUAL}<"
|
|
fi
|