Test: validazione contro i parametri veri di gen_data, report, CLI e regressioni
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
cbcbb7122b
commit
b223cf5fdc
7 files changed
+281
-58
No files matched your search
+8
-11
@@ -1,4 +1,4 @@
|
||||
"""Fixture comuni: configurazione, segnale sintetico (verità nota) e CSV generati da gen_data (se presenti)."""
|
||||
"""Fixture comuni: configurazione, segnale sintetico (verità nota) e scrittura di CSV di prova."""
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
@@ -8,13 +8,19 @@ import pytest
|
||||
from fitseg import config
|
||||
|
||||
RADICE = Path(__file__).parent.parent
|
||||
SEEDS = [1, 2, 3]
|
||||
|
||||
# verità del segnale sintetico
|
||||
TAU, T_AMB = 16.0, 23.0
|
||||
GRADINI = [(15.0, 80.0), (18.0, 70.0), (22.0, 60.0)] # (istante [s], ampiezza [°C])
|
||||
|
||||
|
||||
def scrivi_csv(percorso, t, serie):
|
||||
"""CSV nel formato di gen_data (t_ms intero, valori a due decimali)."""
|
||||
with open(percorso, "w") as f:
|
||||
f.write("t_ms," + ",".join(serie) + "\n")
|
||||
f.writelines(f"{round(ti * 1000)}," + ",".join(f"{serie[n][i]:.2f}" for n in serie) + "\n" for i, ti in enumerate(t))
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def cfg():
|
||||
return config.leggi(RADICE / "config.toml")
|
||||
@@ -32,12 +38,3 @@ def segnale(rumore=0.1, seed=0, gradini=GRADINI, durata=120.0, dt=0.15):
|
||||
@pytest.fixture(scope="session")
|
||||
def sintetico():
|
||||
return segnale()
|
||||
|
||||
|
||||
@pytest.fixture(params=SEEDS)
|
||||
def csv_gen(request):
|
||||
"""CSV prodotto da gen_data per il seed; il test è saltato se il file non c'è (input/*.csv non è in git)."""
|
||||
percorso = RADICE / f"input/gen_{request.param}.csv"
|
||||
if not percorso.exists():
|
||||
pytest.skip(f"{percorso} assente: rigenera con gen_data (vedi README)")
|
||||
return percorso
|
||||
Reference in new issue
Block a user