Test 18 - Gestion des caractères spéciaux dans les chemins
Ce test vérifie si bake
et make
gèrent correctement les chemins contenant divers types de caractères,
comme ~
pour le répertoire personnel, /tmp/
, des chemins avec des barres obliques /
, des tirets -
, et des underscores _
.
Sommaire
- Structure du test
- Contenu des fichiers de règles
- Objectif du test
- Comment exécuter le test
- Résultats attendus
Structure du test
test-18-path-characters/
├── README.md # Ce fichier
├── bake/
│ ├── Bakefile # Fichier de règles pour bake
│ ├── bakefile.jar # Exécutable de bake (JAR)
└── make/
└── Makefile # Fichier de règles pour make
Contenu des fichiers de règles
Les fichiers Makefile
et Bakefile
contiennent les règles suivantes :
all: ~/temp/test.txt /tmp/test.txt ./path/with/slashes/test.txt path-with-dashes.txt path_with_underscores.txt
~/temp/test.txt:
mkdir -p ~/temp
echo "Content in home directory" > ~/temp/test.txt
/tmp/test.txt:
echo "Content in tmp directory" > /tmp/test.txt
./path/with/slashes/test.txt:
mkdir -p ./path/with/slashes
echo "Content in path with slashes" > ./path/with/slashes/test.txt
path-with-dashes.txt:
echo "Content in file with dashes" > path-with-dashes.txt
path_with_underscores.txt:
echo "Content in file with underscores" > path_with_underscores.txt
clean:
rm -rf ~/temp/test.txt /tmp/test.txt ./path/with/slashes path-with-dashes.txt path_with_underscores.txt
Objectif du test
Ce test vérifie que bake
et make
:
- Interprètent correctement les chemins contenant des caractères spéciaux comme
~
,/
,-
, et_
. - Créent les fichiers aux emplacements indiqués.
- Nettoient correctement les fichiers avec la cible
clean
. - Comparent les messages de sortie pour s'assurer que
bake
etmake
gèrent les chemins de manière identique.
Comment exécuter le test
Test manuel
-
Générez les fichiers avec Make :
cd make make
Tous les fichiers doivent être créés aux emplacements spécifiés.
-
Vérifiez que les fichiers existent :
ls ~/temp/test.txt /tmp/test.txt ./path/with/slashes/test.txt path-with-dashes.txt path_with_underscores.txt
-
Faites la même procédure avec Bake :
cd bake java -cp bakefile.jar fr.monlouyan.bakefile.Main
-
Exécutez le nettoyage :
make clean
Tous les fichiers doivent être supprimés.
-
Comparez les résultats et les messages affichés.
Résultats attendus
bake
etmake
doivent interpréter correctement les chemins et créer les fichiers sans erreur.- Tous les fichiers doivent être créés aux bons emplacements.
- La cible
clean
doit supprimer correctement tous les fichiers.