gestion_table_tournante_libre/test/fixtures/mutation/arbre/bornes.js
Mathieu Benoit aaa2c1a3a7 [IMP] mutation: count long-series kills apart, test the audit end to end
A mutant the node series missed but the long series killed was still
counted as a survivor, so the committed audit overstated what escapes
the tests. It now has its own column: 15 of the 137 survivors move
there, leaving 122; the committed files are regenerated from their own
results, without a rerun. The audit itself now runs in the long series
on a small fixture tree: long-series replay, exit code 0 with
survivors, exit 2 and nothing written when the baseline fails. The
committed audit files are read back and must match what rediger writes.
Checked: 3868 node and 105 long tests from the index alone.

--- FR ---

[IMP] mutation : tués par la série longue à part, audit éprouvé entier

Un mutant que la série node manquait et que la série longue tuait
comptait encore comme survivant : l'audit commis surestimait ce qui
échappe aux épreuves. Il a sa colonne : 15 des 137 survivants y passent,
il en reste 122 ; les fichiers commis sont réengendrés de leurs propres
résultats, sans rejeu. L'audit tourne entier dans la série longue sur un
petit arbre : rejeu long, sortie 0 avec survivants, sortie 2 et rien
d'écrit quand la ligne de base tombe. Les fichiers commis sont relus et
doivent égaler ce que rediger écrit.
Vérifié : 3868 node et 105 longues depuis l'index seul.

Assisted-by: Claude Opus 5.5
2026-10-10 18:51:43 -04:00

20 lines
892 B
JavaScript

// © 2026 TechnoLibre (http://www.technolibre.ca)
// License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
// Module inventé du petit arbre que test/mutation.long.test.js audite par
// scripts/mutation/audit.js, posé en src/moteur/bornes.js d'un dossier
// temporaire. Chaque fonction porte des sites dont l'issue est connue sous
// bornes.epreuve.js (la série node) et bornes.longue.js (la série longue).
// Le plus grand de deux nombres. « a > b » → « a >= b » rend le même nombre
// pour tout couple : un survivant que ni l'une ni l'autre série ne tue.
export function plusGrand(a, b) {
return a > b ? a : b;
}
// Le triple d'un nombre. La série node n'en lit que le type, la série longue
// la valeur : « n * 3 » → « n / 3 », « n * 4 », « n * 0 » survivent à la
// première et meurent sous la seconde.
export function triple(n) {
return n * 3;
}