You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							72 lines
						
					
					
						
							2.7 KiB
						
					
					
				
			
		
		
	
	
							72 lines
						
					
					
						
							2.7 KiB
						
					
					
				| #!/bin/sh | |
|  | |
| cleanup () { | |
|   unset -f nvm_compute_checksum | |
| } | |
| die () { echo "$@" ; cleanup ; exit 1; } | |
|  | |
| \. ../../../nvm.sh | |
|  | |
| set -ex | |
|  | |
| nvm_compute_checksum() { | |
|   echo | |
| } | |
|  | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum 2>&1 >/dev/null || echo)" | |
| EXIT_CODE="$(nvm_compare_checksum >/dev/null 2>&1 || echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT='Provided file to checksum is empty.' | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 4 ] || die "expected to exit with code 4, got ${EXIT_CODE}" | |
|  | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum foo 2>&1 >/dev/null || echo)" | |
| EXIT_CODE="$(nvm_compare_checksum foo >/dev/null 2>&1 || echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT='Provided file to checksum does not exist.' | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 3 ] || die "expected to exit with code 3, got ${EXIT_CODE}" | |
|  | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum ../../../nvm.sh 2>&1 >/dev/null || echo)" | |
| EXIT_CODE="$(nvm_compare_checksum ../../../nvm.sh >/dev/null 2>&1 || echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT='Provided checksum to compare to is empty.' | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 2 ] || die "expected to exit with code 2, got ${EXIT_CODE}" | |
|  | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum ../../../nvm.sh checksum 2>&1 >/dev/null)" | |
| EXIT_CODE="$(nvm_compare_checksum ../../../nvm.sh checksum >/dev/null 2>&1 ; echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT="Computed checksum of '../../../nvm.sh' is empty. | |
| WARNING: Continuing *without checksum verification*" | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 0 ] || die "expected to exit with code 0, got ${EXIT_CODE}" | |
|  | |
| nvm_compute_checksum() { | |
|   echo "not checksum: ${1}" | |
| } | |
|  | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum ../../../nvm.sh checksum 2>&1 >/dev/null || echo)" | |
| EXIT_CODE="$(nvm_compare_checksum ../../../nvm.sh checksum >/dev/null 2>&1 || echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT="Checksums do not match: 'not checksum: ../../../nvm.sh' found, 'checksum' expected." | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 1 ] || die "expected to exit with code 1, got ${EXIT_CODE}" | |
|  | |
| nvm_compute_checksum() { | |
|   echo checksum | |
| } | |
| set +x | |
| OUTPUT="$(nvm_compare_checksum ../../../nvm.sh checksum 2>&1 >/dev/null)" | |
| EXIT_CODE="$(nvm_compare_checksum ../../../nvm.sh checksum >/dev/null 2>&1; echo $?)" | |
| set -x | |
| EXPECTED_OUTPUT='Checksums matched!' | |
| [ "${OUTPUT}" = "${EXPECTED_OUTPUT}" ] || die "expected >${EXPECTED_OUTPUT}<, got >${OUTPUT}<" | |
| [ "${EXIT_CODE}" = 0 ] || die "expected to exit with code 0, got ${EXIT_CODE}" | |
|  | |
| cleanup
 | |
| 
 |