1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #!/usr/bin/env bash
- #
- #
- # This file contains test utility functions which are used by the test scripts
- # for each binary.
- #
- #
- COLOR_OFF='\e[0m' # Text Reset
- RED='\e[0;31m' # Red
- YELLOW='\e[0;33m' # Yellow
- GREEN='\e[0;32m' # Green
- RUNTIME="/tmp"
- STORE="${RUNTIME}/store"
- out() {
- [[ -z "$DEBUG_OUTPUT_OFF" ]] && echo -e "${YELLOW}:: $*${COLOR_OFF}"
- }
- success() {
- [[ -z "$DEBUG_OUTPUT_OFF" ]] && echo -e "${GREEN}>> $*${COLOR_OFF}"
- }
- err() {
- [[ -z "$DEBUG_OUTPUT_OFF" ]] && echo -e "${RED}!! $*${COLOR_OFF}"
- }
- silent() {
- DEBUG_OUTPUT_OFF=1 $*
- }
- imag-call-binary() {
- local searchdir=$1; shift
- local binary=$1; shift
- [[ -d $searchdir ]] || { err "FATAL: No directory $searchdir"; exit 1; }
- local bin=$(find $searchdir -iname $binary -type f -executable)
- local flags="--config ./imagrc.toml --override-config store.implicit-create=true --debug --rtp $RUNTIME"
- out "Calling '$bin $flags $*'"
- $bin $flags $*
- }
- cat_entry() {
- cat ${STORE}/$1
- }
- reset_store() {
- rm -r "${STORE}"
- }
- call_test() {
- out "-- TESTING: '$1' --"
- $1
- result=$?
- if [[ -z "$DONT_RESET_STORE" ]]; then
- out "Reseting store"
- reset_store
- out "Store reset done"
- fi
- [[ $result -eq 0 ]] || { err "-- FAILED: '$1'. Exiting."; exit 1; }
- success "-- SUCCESS: '$1' --"
- }
- invoke_tests() {
- out "Invoking tests."
- if [[ ! -z "$INVOKE_TEST" ]]; then
- out "Invoking only $INVOKE_TEST"
- call_test "$INVOKE_TEST"
- else
- out "Invoking $*"
- for t in $*; do
- call_test "$t"
- done
- fi
- }
|