Browse Source

[enh] units tests: enable redirections, use variable for tmp file.

Moul 4 years ago
parent
commit
f31a97aca5
1 changed files with 15 additions and 12 deletions
  1. 15 12
      tests.sh

+ 15 - 12
tests.sh

@@ -1,5 +1,6 @@
 #!/bin/zsh
 
+tmpf="/tmp/toto"
 tests=(
 ## Execution ##
 "ls" # test execution simple
@@ -12,9 +13,9 @@ tests=(
 "naritse" # cmd, élément qui n’existe pas
 "./21sh -c ls" # execution avec './'
 "./anrsiute" # execution élément qui n’existe pas
-"cd /tmp ; touch toto ; chmod 000 toto ; ./toto" # execution toto sans les droits avec './'
-"/tmp/toto" # execution toto sans les droits avec le path entier
-"rm -f /tmp/toto"
+"touch $tmpf ; chmod 000 $tmpf ; ./$tmpf" # execution toto sans les droits avec './'
+"$tmpf" # execution toto sans les droits avec le path entier
+"rm -f $tmpf"
 
 ## Builtin ##
 ## CD ##
@@ -58,23 +59,25 @@ tests=(
 "ls ||||||||| cat"
 
 ## Redirections droite
-#"ls > /tmp/toto ; cat /tmp/toto" # simple
-#"ls >> /tmp/toto ; cat /tmp/toto" # double
-#"mkdir 2> /tmp/toto; cat /tmp/toto" # simple avec fd2 spécifié et erreur
-#"mkdir 2>> /tmp/toto; cat /tmp/toto" # double avec fd2 spécifié et erreur
-#"ls 2> /tmp/toto; cat /tmp/toto" # simple avec fd2 spécifié sans erreur
-#"ls 2>> /tmp/toto; cat /tmp/toto" # double avec fd2 spécifié sans erreur
+"ls > $tmpf ; cat $tmpf ; rm $tmpf" # simple
+"ls >> $tmpf ; cat $tmpf ; rm $tmpf" # double
+"mkdir 2> $tmpf; cat $tmpf ; rm $tmpf" # simple avec fd2 spécifié et erreur
+"mkdir 2>> $tmpf; cat $tmpf ; rm $tmpf" # double avec fd2 spécifié et erreur
+"ls 2> $tmpf; cat $tmpf ; rm $tmpf" # simple avec fd2 spécifié sans erreur
+"ls 2>> $tmpf; cat $tmpf ; rm $tmpf" # double avec fd2 spécifié sans erreur
 
 #"cat riri 2>&-" # avec fd spécifiés
-# "ls>/tmp/toto ; cat /tmp/toto # collé
-# "ls 1> /tmp/toto ; cat /tmp/toto" # fd 1 spécifié
+"ls>$tmpf ; cat $tmpf ; rm $tmpf" # collé
+"ls 1> $tmpf ; cat $tmpf" # fd 1 spécifié
 
 ## Redirections gauche
-#"cat < /tmp/toto"
+"cat < $tmpf"
 #"cat << fin\nnrstai\nfin\n" # double gauche
 #"cat << toto\nnrstai\nrsnati\nairnst\ntoto" # double gauche avec autre string de fin
 
 ## Mix
+"ls ; pwd; ls -a | cat -e | wc > $tmpf ; cat $tmpf ; rm $tmpf" # point-virgules, pipes et redirection
+"ls -a | cat -e | wc >> $tmpf ; cat $tmpf ; rm $tmpf" # pipes et double redirection
 #"mkdir test ; cd test ; ls -a ; ls | cat | wc -c > fifi ; cat fifi ; rm fifi"
 )