diff --git a/tests/auto/simulation/simulation.cpp b/tests/auto/simulation/simulation.cpp index 59a99dd..a4ff877 100644 --- a/tests/auto/simulation/simulation.cpp +++ b/tests/auto/simulation/simulation.cpp @@ -10860,6 +10860,14 @@ void Simulation::testOffPeakDemoDay() QCOMPARE(bat.value("observed").toMap().value("enableDischarging").toBool(), true); QCOMPARE(bat.value("observed").toMap().value("dischargingRate").toDouble(), 0.0); QCOMPARE(s.ecrites->size(), 2); // rien de réécrit une minute après la pose + // PAR LA FRONTIÈRE RPC, pas par l'accesseur : le bloc passe la validation du schéma déclaré + // (`o:storage`), et le Get rend ce qui a été publié. + const QVariantMap rpc = injectAndWait("NymeaEnergy.GetLoadTelemetry").toMap().value("params").toMap(); + QCOMPARE(rpc.value("storage").toMap().value("dischargeBlocked").toBool(), true); + QCOMPARE(rpc.value("storage").toMap().value("decision").toMap().value("code").toString(), + QString(DecisionCode::StorageDischargeBlocked)); + QCOMPARE(rpc.value("storage").toMap().value("batteries").toList().value(0).toMap() + .value("thingId").toUuid(), s.batterie->id()); const QString texteBat = renderFr(DecisionReason(DecisionCode::StorageDischargeBlocked, stockage(snap).value("decision").toMap().value("params").toMap())); QVERIFY2(texteBat.startsWith(QStringLiteral("Décharge de la batterie bloquée : la voiture charge en heures creuses")),