91 lines
2.0 KiB
Bash
Executable File
91 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
#xcrypted
|
|
# Regis Girard
|
|
# modification session 3: pascal ANELLI
|
|
# version 06 Avril 2020
|
|
|
|
source ${LIBSH}/libeval.sh
|
|
|
|
#-----------------------------
|
|
rep=~/Sequence4/A43
|
|
challenge=C43Q2
|
|
scriptname=testargu.sh
|
|
exo=$rep/$scriptname
|
|
#--------------------
|
|
# Debut
|
|
firstcheck
|
|
|
|
fich1=/tmp/fich1
|
|
fich2=/tmp/fich2
|
|
fich3=/tmp/fich3
|
|
rep1=/tmp/rep1
|
|
rep2=/tmp/rep2
|
|
|
|
touch $fich1; chmod +rw $fich1 # lecture ecriture
|
|
touch $fich2; chmod -r+w $fich2 # ecriture
|
|
touch $fich3; chmod +r-w $fich3 # lecture
|
|
|
|
rm -rf $rep1 $rep2 &>/dev/null
|
|
mkdir $rep1 $rep2
|
|
chmod -x $rep2 # non consultable
|
|
|
|
|
|
# code retour des erreurs
|
|
# 1
|
|
$exo &>/dev/null
|
|
[ $? -eq 3 ]
|
|
step $(vraifaux $?) "Le code retour vaut 3 en l'absence d'arguments "
|
|
|
|
# 2
|
|
$exo $fich1 &>/dev/null
|
|
[ $? -eq 3 ]
|
|
step $(vraifaux $?) "Le code retour vaut 3 en l'absence de 2 arguments "
|
|
|
|
# 3
|
|
$exo $fich1 $fich1 $fich1 $fich1 &>/dev/null
|
|
[ $? -eq 3 ]
|
|
step $(vraifaux $?) "Le code retour vaut 3 s'il y a plus de 3 arguments "
|
|
|
|
# 4
|
|
$exo $fich2 $rep1 &>/dev/null
|
|
[ $? -eq 4 ]
|
|
step $(vraifaux $?) "Le code retour vaut 4 quand le premier argument n'est pas correct "
|
|
|
|
# 5
|
|
$exo $fich1 $rep2 &>/dev/null
|
|
[ $? -eq 5 ]
|
|
step $(vraifaux $?) "Le code retour vaut 5 quand le deuxieme argument n'est pas correct "
|
|
|
|
# 6
|
|
$exo $fich1 $rep1 -12 &>/dev/null
|
|
[ $? -eq 6 ]
|
|
step $(vraifaux $?) "Le code retour vaut 6 quand le troisieme argument n'est pas correct"
|
|
|
|
|
|
# Cas corrects
|
|
# 7
|
|
display=$($exo $fich1 $rep1 2>/dev/null)
|
|
step $(vraifaux $?) "Avec deux arguments corrects, le script retourne 0 "
|
|
|
|
# 8
|
|
[ "$display" -eq 999 ]
|
|
step $(vraifaux $?) "Avec deux arguments corrects, le script affiche 999 "
|
|
|
|
# 9
|
|
display=$($exo $fich1 $rep1 3 2>/dev/null)
|
|
step $(vraifaux $?) "Avec trois arguments, le script retourne 0 "
|
|
|
|
#10
|
|
[ "$display" -eq 3 ]
|
|
step $(vraifaux $?) "Avec trois arguments, le script affiche l'entier "
|
|
|
|
|
|
#-----------------------------------------
|
|
# Fin
|
|
status "${challenge}_$res"
|
|
exit 0
|
|
|
|
|
|
# listcode = [ '000', 'a44', '28e', '24f', 'ebf', 'd12', '9f7', 'ff6', '4bc', '81a', '67a' ]
|
|
|