31 lines
685 B
Plaintext
31 lines
685 B
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
set -ex
|
||
|
|
||
|
BEFORE="./before.tmp"
|
||
|
AFTER="./after.tmp"
|
||
|
|
||
|
cleanup () { rm -f "${BEFORE}" "${AFTER}"; }
|
||
|
die () { echo "$@" ; cleanup ; exit 1; }
|
||
|
|
||
|
typeset -f | awk '/ \(\) $/ && !/^main / {print $1}' > "${BEFORE}"
|
||
|
env | grep -v PATH= | grep -v IFS= | grep -v NVM_ | sort >> "${BEFORE}"
|
||
|
|
||
|
set +e # TODO: fix
|
||
|
\. ../../nvm.sh
|
||
|
set -e
|
||
|
|
||
|
type nvm > /dev/null 2>&1 || die "nvm not loaded"
|
||
|
|
||
|
nvm unload
|
||
|
|
||
|
typeset -f | awk '/ \(\) $/ && !/^main / {print $1}' > "${AFTER}"
|
||
|
env | grep -v PATH= | grep -v IFS= | sort >> "${AFTER}"
|
||
|
|
||
|
! type nvm > /dev/null 2>&1 || die "nvm not unloaded"
|
||
|
|
||
|
DIFF="$(diff "${BEFORE}" "${AFTER}" ||:)"
|
||
|
[ -z "${DIFF}" ] || die "function pollution found: ${DIFF}"
|
||
|
|
||
|
cleanup
|