Mise en place test-02-already-exist en java
This commit is contained in:
parent
ffc6257c50
commit
dfb15d2153
31
tests/Java/test-02-already-exist/README.md
Normal file
31
tests/Java/test-02-already-exist/README.md
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# Test 2 : Compilation où le résultat existe déjà
|
||||||
|
|
||||||
|
## Description
|
||||||
|
Ce test vérifie que si l'exécutable `Main.class` est déjà présent et que `Main.java`
|
||||||
|
n'a pas été modifié, alors `Bake` ne tente pas de recompiler.
|
||||||
|
|
||||||
|
## Fichiers utilisés
|
||||||
|
- `Main.java` : Fichier source inchangé.
|
||||||
|
- `Bakefile` : Contient les règles de compilation.
|
||||||
|
- `Main.class` : Fichier compilé déjà généré.
|
||||||
|
|
||||||
|
## Étapes du test
|
||||||
|
|
||||||
|
1. **Première compilation**
|
||||||
|
- Exécuter `bake` pour compiler le programme.
|
||||||
|
- Vérifier que `Main.class` est bien créé.
|
||||||
|
|
||||||
|
2. **Vérification de l'absence de recompilation**
|
||||||
|
- Exécuter `bake` une seconde fois **sans modifier** `Main.java`.
|
||||||
|
- Aucun message indiquant la recompilation ne doit apparaître.
|
||||||
|
|
||||||
|
3. **Modification du fichier source**
|
||||||
|
- Modifier `Main.java` en ajoutant une ligne de code.
|
||||||
|
- Exécuter `bake` à nouveau.
|
||||||
|
- Cette fois, `bake` doit détecter la modification et recompiler `Main.java`.
|
||||||
|
|
||||||
|
## Résultat attendu
|
||||||
|
- Si `Main.class` existe et que `Main.java` n'a pas été modifié, **`Bake` ne doit pas recompiler.**
|
||||||
|
- Si `Main.java` est modifié, `Bake` doit **uniquement** recompiler ce fichier.
|
||||||
|
|
||||||
|
✅ **Si `bake` évite de recompiler sans raison et ne recompile que lorsque c’est nécessaire, alors le test est réussi !** 🚀
|
6
tests/Java/test-02-already-exist/bake/Bakefile
Normal file
6
tests/Java/test-02-already-exist/bake/Bakefile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# Bakefile
|
||||||
|
|
||||||
|
Main.class: Main.java
|
||||||
|
javac Main.java
|
||||||
|
|
||||||
|
all: Main.class
|
6
tests/Java/test-02-already-exist/bake/Main.java
Normal file
6
tests/Java/test-02-already-exist/bake/Main.java
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("Ceci est un programme de test du Bakefile !");
|
||||||
|
System.out.println("test");
|
||||||
|
}
|
||||||
|
}
|
6
tests/Java/test-02-already-exist/make/Main.java
Normal file
6
tests/Java/test-02-already-exist/make/Main.java
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("Ceci est un programme de test du Bakefile !");
|
||||||
|
System.out.println("test");
|
||||||
|
}
|
||||||
|
}
|
6
tests/Java/test-02-already-exist/make/Makefile
Normal file
6
tests/Java/test-02-already-exist/make/Makefile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# Makefile
|
||||||
|
|
||||||
|
Main.class: Main.java
|
||||||
|
javac Main.java
|
||||||
|
|
||||||
|
all: Main.class
|
Loading…
x
Reference in New Issue
Block a user