#!/usr/bin/env bash mkdir -p bin success() { echo -e "\033[92m\033[1m\033[7m${@}\033[0m" } success_lite() { echo -e "\033[92m${@}\033[0m" } error() { echo -e "\033[91m\033[7m\033[1m${@}\033[0m" } warn() { echo -e "\033[93m\033[1m\033[7m${@}\033[0m" } warn_lite() { echo -e "\033[93m${@}\033[0m" } exit_on_error() { if [ $1 -ne 0 ] then error "Error in test. Exiting..." exit $1 else success_lite "Success in test." fi } handle() { $1 exit_on_error $? } c_unit() { warn "Running C unit test chain" echo # Compile C unit tests warn_lite "Making C header unit test" handle make c_unit echo warn_lite "Running C header unit test" handle bin/c echo success "Finished" } $1 echo -e "Time elapsed: ${SECONDS} second(s)"