@@ -33,43 +33,79 @@ jobs:
3333 run : |
3434 ls -R
3535
36- - name : Valider les fichiers XML de test
36+ - name : Valider les fichiers XML valides
3737 run : |
3838 shopt -s nullglob
39- files=(tei/glossaire/test/*.xml)
39+ files=(tei/glossaire/test/valides/ *.xml)
4040
4141 if [ ${#files[@]} -eq 0 ]; then
42- echo "Aucun fichier XML trouvé dans tei/glossaire/test/"
42+ echo "Aucun fichier XML trouvé dans tei/glossaire/test/valides/ "
4343 exit 1
4444 fi
4545
4646 FAIL=0
4747
4848 for file in "${files[@]}"; do
4949 echo "================================"
50- echo "Validation de $file"
50+ echo "Validation attendue (succès) : $file"
51+
5152 if java -jar jing-20220510/bin/jing.jar schemas/glossaire-tei.rng "$file"; then
52- echo "Validation réussie pour $file"
53+ echo "✅ Validation réussie pour $file"
5354 else
54- echo "Validation échouée pour $file"
55+ echo "❌ Ce fichier valide a échoué : $file"
5556 FAIL=1
5657 fi
5758 done
5859
5960 echo "================================"
61+
6062 if [ $FAIL -ne 0 ]; then
61- echo "Validation échouée pour au moins un fichier."
63+ echo "Au moins un fichier valide a échoué ."
6264 exit 1
6365 else
64- echo "Tous les fichiers ont été validés avec succès."
66+ echo "Tous les fichiers valides ont été validés avec succès."
67+ fi
68+
69+ - name : Valider les fichiers XML invalides
70+ run : |
71+ shopt -s nullglob
72+ files=(tei/glossaire/test/invalides/*.xml)
73+
74+ if [ ${#files[@]} -eq 0 ]; then
75+ echo "Aucun fichier XML trouvé dans tei/glossaire/test/invalides/"
76+ exit 1
6577 fi
6678
79+ FAIL=0
80+
81+ for file in "${files[@]}"; do
82+ echo "================================"
83+ echo "Validation attendue (échec) : $file"
84+
85+ if java -jar jing-20220510/bin/jing.jar schemas/glossaire-tei.rng "$file"; then
86+ echo "❌ Ce fichier invalide est passé alors qu’il devrait échouer : $file"
87+ FAIL=1
88+ else
89+ echo "✅ Échec attendu pour $file"
90+ fi
91+ done
92+
93+ echo "================================"
94+
95+ if [ $FAIL -ne 0 ]; then
96+ echo "Au moins un fichier invalide est passé à tort."
97+ exit 1
98+ else
99+ echo "Tous les fichiers invalides ont bien échoué."
100+ fi
101+
67102 - name : Notification Discord succès
68103 if : success()
69104 run : |
70105 curl -H "Content-Type: application/json" \
71106 -d '{"content":"✅ Validation RNG : success — ${{ github.repository }} — branche ${{ github.ref_name }}$"}' \
72107 "${{ secrets.DISCORD_WEBHOOK_URL }}"
108+
73109 - name : Notification Discord échec
74110 if : failure()
75111 run : |
0 commit comments