blob: 97b47c6247704f5437d57b76a7ef5991bf7aea78 [file] [log] [blame]
# ---- TEST RESULTS ----
RESULT=0
result() { # test [error_message]
local result=$?
local outcome="FAIL"
if [ $result -eq 0 ] ; then
echo "PASSED - $1 test"
outcome="PASS"
else
echo "*** FAILED *** - $1 test"
RESULT=$result
[ $# -gt 1 ] && echo "$2"
fi
}
# actual output must match expected to pass
result_out() { # test expected actual
local disp=$(echo "Expected Output:" ;\
echo " $2" ;\
echo "Actual Output:" ;\
echo " $3")
[ "$2" = "$3" ]
result "$1" "$disp"
}
result_sortize_json() { # json
local json=$(echo "$1" | jq --indent 3 --sort-keys 2> /dev/null)
[ $? -ne 0 ] && json=$1
echo "$json"
}
result_out_json() { # test expected_json actual_json
local expected=$(result_sortize_json "$2") actual=$(result_sortize_json "$3")
result_out "$1" "$expected" "$actual" "Sorted JSON"
}