fractus-vorax / tests /test_inauguration.py
thefinalboss's picture
Fractus-Vorax v1.0.0 — the takeover: sealed CTE brain + ingestion organs + mechanical speech (199 tests, honest floors)
1da7ac7 verified
Raw
History Blame Contribute Delete
2.75 kB
# tests/test_inauguration.py
"""Tâche 3 (le relais) — L'INAUGURATION : la démo du takeover.
Un SEUL test (inauguration() est coûteuse quand le noyau 1B vit dans le
python) qui doit passer dans les DEUX venvs :
- mingw sans torch : le cerveau se dégrade en une ligne honnête d'absence,
les organes portent toute la démo (marqueurs 2/3/4/5 + finale) ;
- torch + brain/FRACTUS_BIRTH.pt : en plus, le statut réel du cerveau
(strict 440/440) et la parole du noyau rapportée VERBATIM (word salad
accepté et documenté — docs/NAISSANCE.md).
"""
import re
from demo.inauguration import inauguration
FINAL = "[FRACTUS-VORAX] Le relais est pris. L'entraînement est fini. Il mange."
def _n_atomes(status_line: str) -> int:
"""Extrait le compteur d'une ligne ``[VORAX] brain: N atomes, ...``."""
m = re.search(r"(\d+) atomes", status_line)
assert m, f"ligne sans compteur d'atomes: {status_line!r}"
return int(m.group(1))
def test_inauguration():
lines = inauguration()
out = "\n".join(lines)
# --- marqueurs TOUJOURS présents (organes — les deux venvs) ---
assert "[FRACTUS-VORAX] 1/7 noyau de naissance" in out # statut du cerveau
assert "[FRACTUS-VORAX] 2/7 ingestion" in out
assert "[FRACTUS-VORAX] 3/7 question exacte" in out
assert "tokyo" in out and "FAIT" in out # japon -> carte FAIT
assert "[FRACTUS-VORAX] 4/7 typo" in out
assert "ANALOGIE" in out and "paris" in out # 'franc' -> analogie
assert "[FRACTUS-VORAX] 5/7 session REPL scriptée" in out
assert lines[-1] == FINAL # la ligne du relais pris
# --- la session écrit : n atomes CROÎT d'un :status à l'autre ---
statuses = [l for l in lines if l.startswith("[VORAX] brain:")]
assert len(statuses) == 2, "deux :status attendus (avant/après la question)"
assert _n_atomes(statuses[1]) > _n_atomes(statuses[0])
# --- branche noyau : skip-friendly (dépend de l'environnement) ---
if "cerveau: cte" in out: # torch + tokenizers + cerveau de naissance présents
assert "strict 440/440" in out
assert "[FRACTUS-VORAX] 6/7 la parole du noyau" in out
# la parole, VERBATIM et honnête (word salad accepté) — ou l'aveu
# muet si le tokenizer BPE est indisponible dans cet environnement.
assert '[FRACTUS-VORAX] noyau: "' in out or "noyau muet" in out
else: # mingw sans torch (ou cerveau absent) — les organes portent la démo
assert "cerveau absent dans cet environnement" in out
assert "6/7" not in out
# --- console-safe : jamais → ni — (cp1252-hostiles) ---
assert all("→" not in l and "—" not in l for l in lines)