#!/bin/bash # colors variables GREY='\033[1;30m' RED='\033[1;31m' GREEN='\033[1;32m' ORANGE='\033[1;33m' BLUE='\033[1;34m' PURPLE='\033[1;35m' LIGHTBLUE='\033[1;36m' WHITE='\033[1;37m' NC='\033[0m' # usage of arguments if [ $# -eq 2 ] then PRGM=$1 # path to program SIZE=$2 # size of the list else echo "usage : ./tester.sh path/to/push_swap size_of_list" exit 0 fi # range of random numbers RANGE=$(($SIZE * 2)) # generate the list of randoms differents numbers LIST=($(shuf -i 0-$RANGE -n $SIZE)) echo -e "${WHITE}test lancé avec la liste de nombres suivantes :${NC}" echo -e "${LIST[@]}" OUTPUT=$(./$PRGM ${LIST[@]}) COUNT=$(echo "$OUTPUT" | wc -l) RESULT=$(echo "$OUTPUT" | ./checker ${LIST[@]}) if [[ $RESULT == "OK" ]] then COLOR=$GREEN ANNONCE="réussi !" else COLOR=$RED ANNONCE="raté :(" fi echo -en "${WHITE}le test est ${NC}${COLOR}${ANNONCE}${NC}${WHITE} et a été " echo -e "effectué en ${NC}${ORANGE}${COUNT}${NC}${WHITE} opérations${NC}"