Files
qt5-legatus-legacy/Lts/Proxies/TrainingAreaBase/Plugins/AdlerJson/ModuleTest/ex_status.cpp
T
2026-08-13 18:33:10 +02:00

71 lines
1.8 KiB
C++
Executable File

#include "ex_status.h"
#include <QJsonDocument>
#include <QtTest/QTest>
#include <QJsonDocument>
#include <AdlerJson/telegrams.h>
#include <AdlerJson/generatetelegrams.h>
TestExStatus::TestExStatus()
{
}
// Text Message received: {
// "data": {
// "adlerVerbund": true,
// "partyId": 2,
// "szenar": "UI Test"
// },
// "reciver": "EXCON@GUEZ.DE",
// "referenceUuid": "",
// "sender": "SAA@GUEZ.DE",
// "timestamp": {
// "jahr": 2025,
// "minuten": 56,
// "monat": 3,
// "sekunden": 9,
// "stunden": 12,
// "tag": 18,
// "zdm": "ZDM",
// "zds": "ZDS",
// "zvz": "ZVz"
// },
// "typeId": 1,
// "typeName": "EX-Anmeldung",
// "uuid": "{30eb8761-7d1b-4e37-8a51-6c1995be9825}",
// "version": ""
// }
QString TestExStatus::generateStatusMessage()
{
AdlerJson::EXStatus req;
GenerateTelegrams::addHeaderData(req, m_saaId);
GenerateTelegrams::generateStatusMessage(req, AdlerJson::Szenarstatus::Aktiv);
QJsonObject messageObj =req.toJson();
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
qDebug() << "message=" << message;
qCritical().noquote() << "message=" << message;
return message;
}
void TestExStatus::testExStatus()
{
qDebug() << "----------------------------";
qDebug() << "--- EX-Status ---";
QString statusMessage = generateStatusMessage();
QJsonDocument jsonDoc = QJsonDocument::fromJson(statusMessage.toUtf8());
const QJsonObject jsonObj = jsonDoc.object();
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
AdlerJson::EXStatus status;
bool bOk;
AdlerJson::statusFromJson(dataObj, status, bOk);
QCOMPARE(status.status, AdlerJson::Szenarstatus::Aktiv );
}