Test 13 - Gestion des dépendances inexistantes
Ce test vérifie que bake et make gèrent correctement les cas où une dépendance requise est absente.
L'exécution doit afficher une erreur et stopper la compilation.
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-13-dependance-inexistante/
├── README.md # Ce fichier
├── bake/
│ ├── Bakefile # Fichier de règles pour bake
│ ├── bakefile.jar # Exécutable de bake (JAR)
│ ├── main.c # Fichier source principal
│ ├── (test manquant) # Dépendance absente
└── make/
├── Makefile # Fichier de règles pour make
├── main.c # Fichier source principal
└── (test manquant) # Dépendance absente
Contenu des fichiers de règles
Les fichiers Makefile et Bakefile contiennent les règles suivantes :
all: main
main: main.c test
gcc -o main main.c
clean:
rm -f main
Objectif du test
Ce test vérifie que bake et make :
- Détectent l'absence du fichier
test. - Affichent une erreur explicite indiquant l'absence de la dépendance requise.
- Stoppent l'exécution du processus de compilation.
- Comparent les messages de sortie pour s'assurer que
bakeetmakegèrent l'erreur de manière similaire.
Comment exécuter le test
Test manuel
-
Essayez de compiler avec Make :
cd make makeVous devriez voir une erreur indiquant que
testest manquant. -
Faites la même procédure avec Bake :
cd bake java -cp bakefile.jar fr.monlouyan.bakefile.MainVous devriez voir une erreur similaire et l'arrêt du programme.
Résultats attendus
makeetbakedoivent afficher une erreur indiquant quetestest absent.- L'exécution doit s'arrêter sans produire d'exécutable
main. bakeetmakedoivent avoir un comportement similaire dans la gestion des dépendances manquantes.