87 lines
2.2 KiB
Plaintext
87 lines
2.2 KiB
Plaintext
|
#!/bin/bash
|
||
|
#xcrypted
|
||
|
# creation: Regis Girard
|
||
|
# modification session 3: pascal ANELLI
|
||
|
# version 23 mars 2020
|
||
|
|
||
|
source ${LIBSH}/libeval.sh
|
||
|
|
||
|
#-----------------------------------------
|
||
|
rep=~/Sequence4/A42
|
||
|
challenge=C42Q1
|
||
|
scriptname=alphanum.sh
|
||
|
exo=$rep/$scriptname
|
||
|
#-----------------------------------------
|
||
|
# Debut
|
||
|
firstcheck
|
||
|
|
||
|
err="$(mktemp)"
|
||
|
|
||
|
# 1 Working
|
||
|
$exo a b c &>$err
|
||
|
[ $? -eq 0 -a ! -s "$err" ]
|
||
|
step $(vraifaux $?) "Le script fonctionne " true
|
||
|
|
||
|
# 2 No display
|
||
|
$exo &>>$err
|
||
|
[ ! -s "$err" ]
|
||
|
step $(vraifaux $?) "Rien ne s'affiche " true
|
||
|
|
||
|
# 3 3 arguments
|
||
|
$exo a b c 2>/dev/null
|
||
|
step $(vraifaux $?) "Le script fonctionne avec 3 arguments dans l'ordre"
|
||
|
|
||
|
# 4 code retour cas 1
|
||
|
$exo a a c 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script a un code retour correct lorsque les chaines 1 et 2 sont identiques. "
|
||
|
|
||
|
# 5 code retour cas 2
|
||
|
$exo a b b 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script a un code retour correct lorsque les chaines 2 et 3 sont identiques "
|
||
|
|
||
|
# 6 code retour cas 3
|
||
|
$exo a a a 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script a un code retour correct lorsque les chaines 1, 2 et 3 sont identiques"
|
||
|
|
||
|
# 7 order
|
||
|
$exo b c a 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script teste correctement l'ordre des arguments "
|
||
|
|
||
|
# 8 order
|
||
|
$exo c b a 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script teste correctement l'ordre des arguments "
|
||
|
|
||
|
# 9
|
||
|
$exo a b c d 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script traite correctement les cas où il y a plus de 3 arguments"
|
||
|
|
||
|
# 10
|
||
|
$exo a b 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script traite correctement le cas où il n'y a que 2 arguments "
|
||
|
|
||
|
# 11
|
||
|
$exo a 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script traite correctement le cas où il n'y a qu'un argument "
|
||
|
|
||
|
# 12
|
||
|
$exo 2>/dev/null
|
||
|
[ $? -eq 1 ]
|
||
|
step $(vraifaux $? ) "Le script traite correctement le cas où il n'y a pas d'argument "
|
||
|
|
||
|
|
||
|
#--------------------------------
|
||
|
# Fin
|
||
|
status "${challenge}_$res"
|
||
|
exit 0
|
||
|
|
||
|
|
||
|
# listcode = [ '000', 'd1c', 'e3b', '5c8', 'd9e', '187', 'f71', 'e42', 'b3e', 'e78', '09a', '294', '8fb' ]
|