#!/bin/bash cmd="$1" shift args="$@" pass=0 run_test(){ num=$1 expected=$2 got=$("$cmd" "$args") if cmp -s <(echo $got) <(echo $expected); then echo "Test #$num: $(printf '\e[1;32mPASS\e[0m')" pass=$((pass + 1)) else echo "Test #$num: $(printf '\e[1;31mFAIL\e[0m') Expected: <$expected>, got: <$got>" fi } run_test 1 "YES" <