Délestage visible : le test de la borne manuelle n'a plus d'horloge murale
Le passage en mode manuel ne restitue rien quand la borne est déjà dans l'état de l'usager : il n'arme donc aucun verrou à l'heure réelle. Le scénario peut reprendre une date fixe, et la référence `decisions` se reproduit à l'octet près. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
facad90c2e
commit
5c3cffbad3
@ -12103,6 +12103,12 @@ void Simulation::testOverloadProtectionOnAManualChargerIsLogged()
|
|||||||
reglages.endGroup();
|
reglages.endGroup();
|
||||||
}
|
}
|
||||||
s.borne->setStateValue("pluggedIn", true);
|
s.borne->setStateValue("pluggedIn", true);
|
||||||
|
// La borne est DÉJÀ dans l'état manuel : le passage en mode manuel n'a rien à restituer, donc
|
||||||
|
// n'écrit rien. Sinon le code amont écrirait à l'horloge murale et armerait les verrous de la
|
||||||
|
// borne sur cet instant — un scénario daté en dur se déroulerait « avant » eux, et la
|
||||||
|
// protection serait refusée à chaque geste.
|
||||||
|
s.borne->setStateValue("power", true);
|
||||||
|
s.borne->setStateValue("maxChargingCurrent", 16);
|
||||||
const QVariantMap info = injectAndWait("NymeaEnergy.GetChargingInfos").toMap().value("params").toMap()
|
const QVariantMap info = injectAndWait("NymeaEnergy.GetChargingInfos").toMap().value("params").toMap()
|
||||||
.value("chargingInfos").toList().first().toMap();
|
.value("chargingInfos").toList().first().toMap();
|
||||||
QVariantMap manuel = info;
|
QVariantMap manuel = info;
|
||||||
@ -12112,11 +12118,7 @@ void Simulation::testOverloadProtectionOnAManualChargerIsLogged()
|
|||||||
QString("EnergyErrorNoError"));
|
QString("EnergyErrorNoError"));
|
||||||
QCOMPARE(consigneA(s.borne), 16);
|
QCOMPARE(consigneA(s.borne), 16);
|
||||||
|
|
||||||
// L'HORLOGE MURALE, et elle seule : le passage en mode manuel restitue les valeurs de
|
QDateTime a = utcDateTime(QDate(2026, 6, 8), QTime(10, 0));
|
||||||
// l'usager avec QDateTime::currentDateTime() (code amont), et arme les verrous de la borne sur
|
|
||||||
// cet instant. Un temps de test antérieur les tiendrait fermés, et la protection serait
|
|
||||||
// refusée à chaque geste. On part donc au-delà du verrou d'enclenchement (300 s).
|
|
||||||
QDateTime a = QDateTime::currentDateTime().addSecs(600);
|
|
||||||
QVariantMap snap;
|
QVariantMap snap;
|
||||||
const auto cycle = [&](double phaseA) {
|
const auto cycle = [&](double phaseA) {
|
||||||
a = a.addSecs(60);
|
a = a.addSecs(60);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user