Arbitre : alerte EDF demande mais reseau absent (tension d'entree 0 V), nuit du 12-13/10

This commit is contained in:
Tallagrand Thierry
2026-10-13 06:07:08 +02:00
parent 4e144739ee
commit 3146093b05
4 changed files with 44 additions and 0 deletions

View File

@@ -34,5 +34,18 @@ ok('hors-session-rien', detecterSituation({ ...rech, sessionEngagee: false }) ==
ok('choix-1', lireChoix('1', s.choix)?.cle === '1');
ok('choix-texte', lireChoix('je prends le 2', s.choix)?.cle === '2');
ok('choix-inconnu', lireChoix('5', s.choix) === null && lireChoix('oui', s.choix) === null);
// Cas 0 : releve reel du 13/10 05:54 — session de nuit engagee, contacteur qui retombe,
// tension d'entree 0 V, reseau 0 W, SOC 26 %.
const nuit1310 = { fenetre: 'nuit', finFenetre: '07:24', contacteurOn: false, contacteurEtat: 'off', voitureBranchee: false, borneW: 0,
sourceMode: 'Bloqué', etat: 'vehicle_not_connected', sessionEngagee: true, verrouHysteresis: true,
tensionEntreeV: 0, reseauW: 0, soc: 26, batterieA: -18.2, manqueKwh: 2.74, dvccA: 30 };
const z = detecterSituation(nuit1310);
ok('edf-ne-ferme-pas-1310', z && z.cas === 'edf_ne_ferme_pas' && z.choix.length === 0 && /0 V/.test(z.question) && /26 %/.test(z.question) && /levier/.test(z.question), JSON.stringify(z));
ok('edf-ne-ferme-pas-contacteur-affiche-on', detecterSituation({ ...nuit1310, contacteurOn: true, contacteurEtat: 'on' })?.cas === 'edf_ne_ferme_pas');
ok('edf-arrive-pas-d-alerte-edf', detecterSituation({ ...nuit1310, contacteurOn: true, tensionEntreeV: 229, reseauW: 2300, batterieA: 21.8 }) === null);
ok('tension-figee-mais-reseau-mesure', detecterSituation({ ...nuit1310, contacteurOn: true, tensionEntreeV: 0, reseauW: 1500, batterieA: 21.8 }) === null);
ok('edf-pas-demande-rien', detecterSituation({ ...nuit1310, sessionEngagee: false, verrouHysteresis: false }) === null);
ok('hysteresis-hors-hc-alerte', detecterSituation({ ...nuit1310, fenetre: null, sessionEngagee: false })?.cas === 'edf_ne_ferme_pas');
ok('tension-illisible-pas-d-alerte', detecterSituation({ ...nuit1310, tensionEntreeV: NaN }) === null);
console.log(f ? `\n${f} ECHEC(S)` : '\nARBITRAGE OK');
process.exit(f ? 1 : 0);