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

73 lines
1.8 KiB
C++
Executable File

#include "ex_anmeldung.h"
#include <QJsonDocument>
#include <QtTest/QTest>
#include <QJsonDocument>
#include <AdlerJson/telegrams.h>
#include <AdlerJson/generatetelegrams.h>
TestExAnmeldung::TestExAnmeldung()
{
}
// 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 TestExAnmeldung::generateConnectMessage()
{
AdlerJson::EXRegistration req;
GenerateTelegrams::addHeaderData(req, m_saaId);
GenerateTelegrams::generateConnectMessage(req, m_partyId);
QJsonObject messageObj =req.toJson();
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
return message;
}
void TestExAnmeldung::testExAnmeldung()
{
qDebug() << "----------------------";
qDebug() << "--- EX-Anmeldung ---";
QString connectMessage = generateConnectMessage();
QJsonDocument jsonDoc = QJsonDocument::fromJson(connectMessage.toUtf8());
const QJsonObject jsonObj = jsonDoc.object();
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
AdlerJson::Anmeldedaten anmeldedaten;
bool bOk;
AdlerJson::anmeldedatenFromJson(dataObj, anmeldedaten, bOk);
QCOMPARE(anmeldedaten.partyId, m_partyId );
QCOMPARE(anmeldedaten.adlerVerbund, true);
QCOMPARE(anmeldedaten.szenar, QStringLiteral("UI Test") );
}