ajouts des tests discord

This commit is contained in:
hugogogo
2021-12-05 18:26:44 +01:00
parent 39908b71d9
commit a485b3046e
9 changed files with 3743 additions and 95 deletions

View File

@@ -1,27 +0,0 @@
simplonco@simplonco-Latitude-E6320:~/Nextcloud/informatique/42/minishell/minishell/tests/unit_tes
sts$ echo "hugo"
hugo
simplonco@simplonco-Latitude-E6320:~/Nextcloud/informatique/42/minishell/minishell/tests/unit_tes
sts$ cat << EOF
> 
file.log unitests.sh ut_expensions.sh ut_to_do_manually.sh
logs/ ut_bonus.sh ut_heredocs.sh ut_vrac.sh
minishell ut_builtins.sh ut_pipes.sh wip/
tests_discord.md ut_exit_status.sh ut_redirections.sh
>
file.log unitests.sh ut_expensions.sh ut_to_do_manually.sh
logs/ ut_bonus.sh ut_heredocs.sh ut_vrac.sh
minishell ut_builtins.sh ut_pipes.sh wip/
tests_discord.md ut_exit_status.sh ut_redirections.sh
> hello you
> 
file.log unitests.sh ut_expensions.sh ut_to_do_manually.sh
logs/ ut_bonus.sh ut_heredocs.sh ut_vrac.sh
minishell ut_builtins.sh ut_pipes.sh wip/
tests_discord.md ut_exit_status.sh ut_redirections.sh
>
file.log unitests.sh ut_expensions.sh ut_to_do_manually.sh
logs/ ut_bonus.sh ut_heredocs.sh ut_vrac.sh
minishell ut_builtins.sh ut_pipes.sh wip/
tests_discord.md ut_exit_status.sh ut_redirections.sh
> EOF

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,56 +0,0 @@
rotrojan (Romain) — 06/10/2021
si tu veux on m'a passé quelques listes de tests sympas ... 😈
fd leaks:
```
ulimit -n # nombre de fd dispo max (pour expliquer le principe de fd leaks a l'evalué)
ls /proc/self/fd # affiche le nombre fd utilisés par le process enfant il faut donc repeter cette commande plusieurs fois lors de la correction pour verifier les fd leaks
ls | ls | ls /proc/self/fd # regarder le nombre de fd
ls | ls | ls | ls | ls | ls /proc/self/fd # le nombre de fd doit etre le meme que la ligne d'avant!
# essayer aussi avec des redirections!
```
trivialités:
```
#lancer minishell comme ceci puis faire des bails
env -i ./minishell
# redirections:
>test # doit creer test
>>test # doit creer test
<test # doit essayer d'ouvrir test
cat <a <b >c >d # input b output d
# pipes
ls | cat # affiche ls
cat | ls # doit afficher ls puis doit exit apres un \n
# les redirections doivent etre faites APRES les pipes, (donc sont prioritaires par ecrasement)
cat a | < b cat | cat > c | cat # b doit etre copié dans c, rien ne doit etre ecrit dans stdout
# execution
./non_executable # permission denied exit code 126
./directory
non_executable # avec non_executable dans un dossier du path, permission denied
cat < directory
```
parsing :
```
export A="s -la" #puis faire
l$A #doit executer un ls -la (donc que le split se fait apres le remplacement de var d'env)
export A=p #puis faire
export B=w #puis faire
$A"$B"d #doit executer un pwd, puis faire
"$A"'$B'd #ne doit pas faire de pwd car les var d'env ne sont pas remplacee dans les simple quote
echo "ls -la <a | grep x > b" #doit afficher "ls -la <a | grep x > b"
echo ok "" ok #doit avoir deux espaces car "" est un argument vide mais est un argument
echo ok "" "" "" "" "" "" "" "" "" ok #pour mieux voir ce qui est avant
export OK="ok ok" #puis faire
echo $OK #doit afficher "ok ok" (un seul espace entre les deux, echo prends deux arguments)
# si il y a le ; qui est fait
unset A #pour etre sur que la variable d'environnement existe pas puis faire la suite sur une autre ligne de commande
export A=ok; echo $A #doit afficher un ok
```
https://github.com/t0mm4rx/minishell_tests
@dkoriaki (Daniel) plusieurs de ces tests ne sont plus pertinents car ils concernaient l'ancien sujet de minishell, mais la plupart restent quand même intéressants

View File

@@ -33,3 +33,20 @@ echo '$HOME'
echo \$HOME
export A="s -la"
l$A
export A=p
export B=w
$A"$B"d
"$A"'$B'd
echo "ls -la <a | grep x > b"
echo ok "" ok
echo ok "" "" "" "" "" "" "" "" "" ok
export OK="ok ok"
echo $OK

View File

@@ -1,13 +1,5 @@
#!/bin/bash
COMMANDE=' echo "hugo"
cat << EOF
hello you
EOF'
echo "$COMMANDE" | bash -i &>file.log
#echo "$COMMANDE" | ./minishell &>file.log
#cat << EOF
#hello
#EOF

View File

@@ -34,3 +34,15 @@ rm output
sleep 5 | exit
ls | cat
cat | ls
ulimit -n
ls /proc/self/fd
ls | ls | ls /proc/self/fd
ls | ls | ls | ls | ls | ls /proc/self/fd

View File

@@ -52,3 +52,49 @@ not_cmd bonjour > salut
ls
rm salut
>testt
ls
rm testt
>>testt
ls
rm testt
<testt
ls
rm testt
touch testt
<testt
rm testt
rm testt
<testt
rm testt
cat <a <b >c >d
echo hello >a
echo byebye >b
cat <a <b >c >d
cat a
cat b
cat c
cat d
rm a b c d
cat a | < b cat | cat > c | cat
ls
rm a b c
echo hello >a
echo byebye >b
echo ouf >c
cat a | < b cat | cat > c | cat
ls
cat a
cat b
cat c
rm a b c

View File

@@ -17,3 +17,16 @@ minishell
l^Ds
touch testt
chmod 000 testt
ls
./testt
rm -rf testt
mkdir testt
./testt
pwd
cd ../
rm -rf testt
cat < ../