readme test 26 27 28 29 30 31 32 et modif README TEST
This commit is contained in:
@@ -1,2 +1,106 @@
|
||||
En gros, ici on vérifie si ça marche les redirections
|
||||
jors j'envoie mon echo dans un fichier
|
||||
# Test 31 - Gestion des redirections I/O
|
||||
|
||||
Ce test vérifie comment `bake` et `make` gèrent les redirections d'entrée/sortie (`>`, `>>`, `<`, `|`).
|
||||
|
||||
## Sommaire
|
||||
- [Structure du test](#structure-du-test)
|
||||
- [Contenu des fichiers de règles](#contenu-des-fichiers-de-règles)
|
||||
- [Objectif du test](#objectif-du-test)
|
||||
- [Scénario de test](#scénario-de-test)
|
||||
- [Comment exécuter le test](#comment-exécuter-le-test)
|
||||
- [Test manuel](#test-manuel)
|
||||
- [Résultats attendus](#résultats-attendus)
|
||||
|
||||
## Structure du test
|
||||
|
||||
```
|
||||
test-31-redirection/
|
||||
├── README.md
|
||||
├── bake/
|
||||
│ ├── Bakefile
|
||||
│ ├── bakefile.jar
|
||||
├── make/
|
||||
│ ├── Makefile
|
||||
```
|
||||
|
||||
## Contenu des fichiers de règles
|
||||
|
||||
```makefile
|
||||
.PHONY: all test-output test-append test-input test-multiple test-pipe test-cleanup
|
||||
|
||||
all: test-output test-append test-input test-multiple test-pipe
|
||||
@echo "Tous les tests de redirection I/O sont terminés"
|
||||
|
||||
# Test de redirection de sortie standard (>)
|
||||
test-output:
|
||||
@echo "Test de redirection de sortie >"
|
||||
echo "Contenu écrit avec redirection >" > output.txt
|
||||
@cat output.txt
|
||||
@echo "-----------------------------"
|
||||
|
||||
# Test de redirection avec ajout (>>)
|
||||
test-append:
|
||||
@echo "Test de redirection avec ajout >>"
|
||||
echo "Première ligne" > append.txt
|
||||
echo "Deuxième ligne ajoutée" >> append.txt
|
||||
@cat append.txt
|
||||
@echo "-----------------------------"
|
||||
|
||||
# Test de redirection d'entrée (<)
|
||||
test-input:
|
||||
@echo "Test de redirection d'entrée <"
|
||||
echo "Contenu à lire" > input.txt
|
||||
cat < input.txt
|
||||
@echo "-----------------------------"
|
||||
|
||||
# Test de redirections multiples
|
||||
test-multiple:
|
||||
@echo "Test de redirections multiples"
|
||||
echo "Ligne 1" > multi.txt
|
||||
echo "Ligne 2" >> multi.txt
|
||||
cat < multi.txt > multi-output.txt
|
||||
@cat multi-output.txt
|
||||
@echo "-----------------------------"
|
||||
|
||||
# Test de pipe |
|
||||
test-pipe:
|
||||
@echo "Test de pipe |"
|
||||
echo "LIGNE UN\nLIGNE DEUX\nLIGNE TROIS" | grep LIGNE | wc -l
|
||||
@echo "-----------------------------"
|
||||
|
||||
# Nettoyage des fichiers créés
|
||||
test-cleanup:
|
||||
@echo "Nettoyage des fichiers de test"
|
||||
rm -f output.txt append.txt input.txt multi.txt multi-output.txt
|
||||
```
|
||||
|
||||
## Objectif du test
|
||||
|
||||
Ce test vérifie que `bake` et `make` :
|
||||
1. Gèrent correctement la redirection de sortie standard `>` et `>>`.
|
||||
2. Lisent des fichiers en redirigeant l'entrée `<`.
|
||||
3. Traitent les redirections combinées (`<` et `>` en même temps).
|
||||
4. Gèrent correctement les pipes `|` pour la manipulation de commandes.
|
||||
|
||||
## Scénario de test
|
||||
|
||||
1. Exécuter `make` et `bake` pour voir la gestion des redirections.
|
||||
2. Vérifier le contenu des fichiers créés.
|
||||
3. Supprimer les fichiers après le test.
|
||||
|
||||
## Test manuel
|
||||
|
||||
```bash
|
||||
cd make
|
||||
make all
|
||||
make test-cleanup
|
||||
|
||||
cd bake
|
||||
java -cp bakefile.jar fr.monlouyan.bakefile.Main all
|
||||
java -cp bakefile.jar fr.monlouyan.bakefile.Main test-cleanup
|
||||
```
|
||||
|
||||
## Résultats attendus
|
||||
|
||||
- Les fichiers créés doivent contenir les résultats attendus des redirections.
|
||||
- Les pipes doivent fonctionner comme prévu.
|
||||
|
Reference in New Issue
Block a user