Tests du moteur embarqué
tests/test_engine.sh : coups d'ouverture connus à 0 et 2 plis, nombre de coups légaux, bornes et symétrie des probabilités, décisions de videau évidentes, erreurs. test_makefile.sh essaie make clean sur un dossier jetable, pour ne plus forcer la recompilation du moteur à chaque test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
05d59c6acb
commit
a90f8ac9bf
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# Vérifie le contrat du Makefile décrit dans CLAUDE.md :
|
||||
# toutes les commandes obligatoires existent et apparaissent dans `make help`,
|
||||
# et `make clean` peut être relancé sans erreur.
|
||||
# et `make clean` supprime le dossier de build et peut être relancé sans erreur.
|
||||
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")/.."
|
||||
@@ -17,6 +17,11 @@ for cible in setup build test lint deploy clean help; do
|
||||
fi
|
||||
done
|
||||
|
||||
make clean >/dev/null
|
||||
make clean >/dev/null
|
||||
[ ! -e build ] || { echo "make clean n'a pas supprimé build/"; exit 1; }
|
||||
# make clean est essayé sur un dossier de build jetable : vider le vrai build/
|
||||
# forcerait à recompiler le moteur et à régénérer ses données à chaque test.
|
||||
faux_build="$(mktemp -d)"
|
||||
touch "$faux_build/artefact"
|
||||
make clean BUILD_DIR="$faux_build" >/dev/null
|
||||
make clean BUILD_DIR="$faux_build" >/dev/null
|
||||
[ ! -e "$faux_build" ] || { echo "make clean n'a pas supprimé le dossier de build"; exit 1; }
|
||||
grep -qx 'BUILD_DIR := build' Makefile || { echo "BUILD_DIR ne vaut plus build"; exit 1; }
|
||||
|
||||
Reference in New Issue
Block a user