mirror of
				https://github.com/nvm-sh/nvm.git
				synced 2025-10-31 10:15:53 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| assert_ok() {
 | ||
|   local FUNCTION=$1
 | ||
|   shift
 | ||
| 
 | ||
|   $($FUNCTION $@) || die '"'"$FUNCTION $@"'" should have succeeded, but failed'
 | ||
| }
 | ||
| 
 | ||
| assert_not_ok() {
 | ||
|   local FUNCTION=$1
 | ||
|   shift
 | ||
| 
 | ||
|   ! $($FUNCTION $@) || die '"'"$FUNCTION $@"'" should have failed, but succeeded'
 | ||
| }
 | ||
| 
 | ||
| strip_colors() {
 | ||
|   while read -r line; do
 | ||
|     echo "$line" | LC_ALL=C command sed 's/\[[ -?]*[@-~]//g'
 | ||
|   done
 | ||
| }
 | ||
| 
 | ||
| make_echo() {
 | ||
|   echo "#!/bin/sh" > "$1"
 | ||
|   echo "echo \"${2}\"" > "$1"
 | ||
|   chmod a+x "$1"
 | ||
| }
 | ||
| 
 | ||
| make_fake_node() {
 | ||
|   local VERSION
 | ||
|   VERSION="${1-}"
 | ||
|   [ -n "${VERSION}" ] || return 1
 | ||
| 
 | ||
|   local BIN_PATH
 | ||
|   BIN_PATH="$(nvm_version_path "${VERSION}")/bin"
 | ||
|   mkdir -p "${BIN_PATH}" || {
 | ||
|     echo >&2 'unable to make bin dir'
 | ||
|     return 2
 | ||
|   }
 | ||
| 
 | ||
|   make_echo "${BIN_PATH}/node" "${VERSION}" || {
 | ||
|     echo >&2 'unable to make fake node bin'
 | ||
|     return 3
 | ||
|   }
 | ||
| }
 | ||
| 
 | ||
| make_fake_iojs() {
 | ||
|   local VERSION
 | ||
|   VERSION="${1-}"
 | ||
|   [ -n "${VERSION}" ] || return 1
 | ||
| 
 | ||
|   local BIN_PATH
 | ||
|   BIN_PATH="$(nvm_version_path "iojs-${VERSION}")/bin"
 | ||
|   mkdir -p "${BIN_PATH}" || {
 | ||
|     echo >&2 'unable to make bin dir'
 | ||
|     return 2
 | ||
|   }
 | ||
| 
 | ||
|   make_echo "${BIN_PATH}/node" "${VERSION}" || {
 | ||
|     echo >&2 'unable to make fake node bin'
 | ||
|     return 3
 | ||
|   }
 | ||
|   make_echo "${BIN_PATH}/iojs" "${VERSION}" || {
 | ||
|     echo >&2 'unable to make fake iojs bin'
 | ||
|     return 3
 | ||
|   }
 | ||
| }
 |