#!/bin/bash
# Regis Girard 
# version 2019-13-06

source ${LIBSH}/libeval.sh



#-----------------------------------------
rep=/home/alice/Sequence4/A42
challenge=C42Q1
scriptname=exo1.sh
log=/tmp/log.txt
res=0

#-----------------------------------------
# Debut
echo "** Evaluation du challenge  $challenge **"
if [ ! -f $rep/$scriptname ] || [ ! -x $rep/$scriptname ]
then
    echo "Attention: Votre script doit s'appeler $scriptname, etre dans le repertoire $rep et etre executable" >&2
    exit 1
fi

$rep/exo1.sh a b c 2>/dev/null
[ $? -eq 0 ] && ((res+=1)) || echo "Le script ne teste pas correctement l'ordre des arguments"

$rep/exo1.sh a a c 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script a un code retour incorrect lorsque au moins deux chaines sont identiques"

$rep/exo1.sh a b b 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script a un code retour incorrect lorsque au moins deux chaines sont identiques"

$rep/exo1.sh a a a 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script a un code retour incorrect lorsque au moins deux chaines sont identiques"

$rep/exo1.sh b c a 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script ne teste pas correctement l'ordre des arguments"

$rep/exo1.sh c b a 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script ne teste pas correctement l'ordre des arguments"

$rep/exo1.sh a b c d 2>/dev/null 
[ $? -eq 1 ] && ((res+=1)) || echo "Le script ne traite pas correctement les cas où il y a plus de 3 arguments"

$rep/exo1.sh a b 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "VLe script ne traite  pas correctement le cas où il n'y a que deux arguments"

$rep/exo1.sh a 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script ne traite  pas correctement le cas où il n'y a qu'un argument"

$rep/exo1.sh 2>/dev/null
[ $? -eq 1 ] && ((res+=1)) || echo "Le script ne traite  pas correctement le cas où il n'y a pas d'argument"


status $res