Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,77 @@
|
||||
#
|
||||
# @RDE_HEADER@
|
||||
# $Id: CMakeLists.txt 64525 2025-02-14 12:35:41Z fritsche_h $
|
||||
# $HeadURL: svn://slssvn/TDS/branches/product/features/24_adler/Lts/Services/AreaEffectSimulation/ModuleTest_ExplosionCluster/CMakeLists.txt $
|
||||
# $Author: fritsche_h $
|
||||
#
|
||||
|
||||
SET(UnitTestSources
|
||||
test_telegram_decoding.cpp
|
||||
ex_anmeldung.cpp
|
||||
ex_anmeldung.h
|
||||
ex_abmeldung.cpp
|
||||
ex_abmeldung.h
|
||||
ex_anmeldebestaetigung.cpp
|
||||
ex_anmeldebestaetigung.h
|
||||
ex_status.cpp
|
||||
ex_status.h
|
||||
ex_fq_wirkfeldplanung.cpp
|
||||
ex_fq_wirkfeldplanung.h
|
||||
ex_fq_feuerbereit.cpp
|
||||
ex_fq_feuerbereit.h
|
||||
ex_fq_feuern.cpp
|
||||
ex_fq_feuern.h
|
||||
ex_fq_abgefeuert.cpp
|
||||
ex_fq_abgefeuert.h
|
||||
ex_fq_vollzugsmeldung.cpp
|
||||
ex_fq_vollzugsmeldung.h
|
||||
# ex_erkundungsanfrage.cpp
|
||||
# ex_erkundungsanfrage.h
|
||||
ex_erkundungsergebnisse.cpp
|
||||
ex_erkundungsergebnisse.h
|
||||
ex_fq_feuerkampf.cpp
|
||||
ex_fq_feuerkampf.h
|
||||
ex_fh_feuerhalt.cpp
|
||||
ex_fh_feuerhalt.h
|
||||
ex_sq_stellungsmeldung_fs.cpp
|
||||
ex_sq_stellungsmeldung_fs.h
|
||||
ex_sq_stellungsmeldung_ws.cpp
|
||||
ex_sq_stellungsmeldung_ws.h
|
||||
ex_sq_stellungsmeldung_lp.cpp
|
||||
ex_sq_stellungsmeldung_lp.h
|
||||
ex_sq_stellungswechsel.cpp
|
||||
ex_sq_stellungswechsel.h
|
||||
ex_hq_koordinierungsmassnahmen.cpp
|
||||
ex_hq_koordinierungsmassnahmen.h
|
||||
ex_hq_fuehrungslinien.cpp
|
||||
ex_hq_fuehrungslinien.h
|
||||
ex_tq_technische_quittung.cpp
|
||||
ex_tq_technische_quittung.h
|
||||
ex_aq_freitext.cpp
|
||||
ex_aq_freitext.h
|
||||
ex_mq_manuelle_quittung.cpp
|
||||
ex_mq_manuelle_quittung.h
|
||||
ex_flugbahnberechnung.cpp
|
||||
ex_flugbahnberechnung.h
|
||||
ex_flugbahndaten.cpp
|
||||
ex_flugbahndaten.h
|
||||
)
|
||||
|
||||
IF(BUILD_TESTING)
|
||||
ADD_EXECUTABLE(tabModuleTestAdler ${LinkedSources} ${UnitTestSources}
|
||||
msgcompares.h msgcompares.cpp)
|
||||
|
||||
|
||||
TARGET_LINK_LIBRARIES(tabModuleTestAdler
|
||||
NGLLogger
|
||||
LtsCommandLineParser
|
||||
nglsettings
|
||||
nglapplication
|
||||
saaTelegrams
|
||||
Qt5::Network
|
||||
Qt5::WebSockets
|
||||
Qt5::Test
|
||||
)
|
||||
|
||||
# ADD_TEST(NAME tabModuleTestAdler COMMAND $<TARGET_FILE:aesUnitTestTneAlgorithmen>)
|
||||
ENDIF()
|
||||
@@ -0,0 +1,66 @@
|
||||
#include "ex_abmeldung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExAbmeldung::TestExAbmeldung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// Text Message received: {
|
||||
// "data": {
|
||||
// "partyId": 2,
|
||||
// },
|
||||
// "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-Abmeldung",
|
||||
// "uuid": "{30eb8761-7d1b-4e37-8a51-6c1995be9825}",
|
||||
// "version": ""
|
||||
// }
|
||||
|
||||
|
||||
QString TestExAbmeldung::generateDisconnectMessage()
|
||||
{
|
||||
AdlerJson::EXDeregistration req;
|
||||
GenerateTelegrams::addHeaderData(req, m_partyId);
|
||||
GenerateTelegrams::generateAbmeldung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExAbmeldung::testExAbmeldung()
|
||||
{
|
||||
qDebug() << "----------------------";
|
||||
qDebug() << "--- EX-Abmeldung ---";
|
||||
QString disconnectMessage = generateDisconnectMessage();
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(disconnectMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Abmeldedaten abmeldedaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::abmeldedatenFromJson(dataObj, abmeldedaten, bOk);
|
||||
|
||||
QCOMPARE(abmeldedaten.partyId, m_partyId );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExAbmeldung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExAbmeldung();
|
||||
QString generateDisconnectMessage();
|
||||
|
||||
private slots:
|
||||
void testExAbmeldung();
|
||||
|
||||
private:
|
||||
int m_partyId {2};
|
||||
};
|
||||
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
#include "ex_anmeldebestaetigung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExAnmeldebestaetigung::TestExAnmeldebestaetigung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QString TestExAnmeldebestaetigung::generateAnmeldebestaetigung()
|
||||
{
|
||||
AdlerJson::ExAnmeldebestaetigung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_partyId);
|
||||
GenerateTelegrams::generateConnectResponseMessage(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExAnmeldebestaetigung::testExAnmeldebestaetigung()
|
||||
{
|
||||
qDebug() << "--------------------------------";
|
||||
qDebug() << "--- EX-Anmeldebestaetigung ---";
|
||||
QString connectMessage = generateAnmeldebestaetigung();
|
||||
qDebug() << connectMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(connectMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::AnBestaetigungsdaten anBestaetigungsdaten;
|
||||
}
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExAnmeldebestaetigung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExAnmeldebestaetigung();
|
||||
QString generateAnmeldebestaetigung();
|
||||
|
||||
private slots:
|
||||
void testExAnmeldebestaetigung();
|
||||
|
||||
private:
|
||||
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {0};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
#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") );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExAnmeldung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExAnmeldung();
|
||||
QString generateConnectMessage();
|
||||
|
||||
private slots:
|
||||
void testExAnmeldung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_aq_freitext.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExAqFreitextmeldung::TestExAqFreitextmeldung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExAqFreitextmeldung::generateFreitextmeldung()
|
||||
{
|
||||
AdlerJson::ExAqFreitextmeldung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFreitextmeldung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExAqFreitextmeldung::testExAqFreitextmeldung()
|
||||
{
|
||||
qDebug() << "-----------------------------";
|
||||
qDebug() << "--- EX-AQ Freitextmeldung ---";
|
||||
QString freitextMessage = generateFreitextmeldung();
|
||||
qDebug() << "EX-AQ Freitextmeldung=" << freitextMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(freitextMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExAqFreitextmeldung exAqFreitextmeldung;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::FreitextDatenFromJson(dataObj, exAqFreitextmeldung.freitextDaten, bOk);
|
||||
MsgCompares::compareFreitextDaten(exAqFreitextmeldung.freitextDaten);
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExAqFreitextmeldung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExAqFreitextmeldung();
|
||||
QString generateFreitextmeldung();
|
||||
|
||||
private slots:
|
||||
void testExAqFreitextmeldung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
#include "ex_erkundungsanfrage.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqErkundungsanfrage::TestExFqErkundungsanfrage()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QString TestExFqErkundungsanfrage::generateErkundungsanfrage()
|
||||
{
|
||||
AdlerJson::ExErkundungsanfrage req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateErkundungsanfrage(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqErkundungsanfrage::testExFqErkundungsanfrage()
|
||||
{
|
||||
qDebug() << "-----------------------------------------------------------";
|
||||
qDebug() << "--- EX-Erkundungsanfrage - Anfrage Erkundungsergebnisse ---";
|
||||
QString erkundungsanfrageMessage = generateErkundungsanfrage();
|
||||
qDebug() << "generateErkundungsanfrage=" << erkundungsanfrageMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(erkundungsanfrageMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerkampfdaten feuerkampfdaten;
|
||||
qDebug() << "Nur Header, kein Data-Bereich => keine Q-Compares fuer den Data-Bereich";
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqErkundungsanfrage : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqErkundungsanfrage();
|
||||
QString generateErkundungsanfrage();
|
||||
|
||||
private slots:
|
||||
void testExFqErkundungsanfrage();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
#include "ex_erkundungsergebnisse.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExErkundungsergebnisse::TestExErkundungsergebnisse()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExErkundungsergebnisse::generateErkundungsergebnisse()
|
||||
{
|
||||
AdlerJson::ExErkundungsergebnisse req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateErkundungsergebnisse(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExErkundungsergebnisse::testExErkundungsergebnisse()
|
||||
{
|
||||
qDebug() << "-------------------------------------------------------------";
|
||||
qDebug() << "--- EX-Erkundungsergebnisse - Senden Erkundungsergebnisse ---";
|
||||
QString erkundungsergebnisseMessage = generateErkundungsergebnisse();
|
||||
qDebug() << "erkundungsergebnisseMessage=" << erkundungsergebnisseMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(erkundungsergebnisseMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExErkundungsergebnisse erkundungsergebnisse;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::erkundungsdatenFromJson(dataObj, erkundungsergebnisse.erkundungsdaten, bOk);
|
||||
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.einheit.r,5);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.einheit.verein, QStringLiteral("verein Erkundungsdaten"));
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.ladeplatz.hoehe, 55);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.ladeplatz.koordinate.latitude, 53.37790);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.ladeplatz.koordinate.longitude, 8.758);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze.size(), 2);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[0].hoehe, 56);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[0].koordinate.longitude, 8.759);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[0].koordinate.latitude, 53.37791);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[1].hoehe, 57);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[1].koordinate.longitude, 8.760);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.waffenplaetze[1].koordinate.latitude, 53.37792);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.wirkungsbereich.grundrichtung, 33);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.wirkungsbereich.links, 44);
|
||||
QCOMPARE(erkundungsergebnisse.erkundungsdaten.stellungen.wirkungsbereich.rechts, 55);
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExErkundungsergebnisse : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExErkundungsergebnisse();
|
||||
QString generateErkundungsergebnisse();
|
||||
|
||||
private slots:
|
||||
void testExErkundungsergebnisse();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_fh_feuerhalt.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFeuerhalt::TestExFeuerhalt()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFeuerhalt::generateFeuerhalt()
|
||||
{
|
||||
AdlerJson::ExFeuerhalt req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFeuerhalt(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFeuerhalt::testExFeuerhalt()
|
||||
{
|
||||
qDebug() << "------------------------";
|
||||
qDebug() << "--- EX-FH Feuer HALT ---";
|
||||
QString feuerhaltMessage = generateFeuerhalt();
|
||||
qDebug() << "feuerhaltMessage=" << feuerhaltMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(feuerhaltMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::FeuerHaltDaten feuerHaltDaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerHaltDatenFromJson(dataObj, feuerHaltDaten, bOk);
|
||||
MsgCompares::compareFeuerHaltDaten(feuerHaltDaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFeuerhalt : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFeuerhalt();
|
||||
QString generateFeuerhalt();
|
||||
|
||||
private slots:
|
||||
void testExFeuerhalt();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
#include "ex_flugbahnberechnung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFlugbahnberechnung::TestExFlugbahnberechnung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFlugbahnberechnung::generateFlugbahnberechnung()
|
||||
{
|
||||
AdlerJson::ExFlugbahnberechnung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFlugbahnberechnung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFlugbahnberechnung::testExFlugbahnberechnung()
|
||||
{
|
||||
qDebug() << "-----------------------------";
|
||||
qDebug() << "--- EX-Flugbahnberechnung ---";
|
||||
QString flugbahnberechnungMessage = generateFlugbahnberechnung();
|
||||
qDebug() << "EX-Flugbahnberechnung=" << flugbahnberechnungMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(flugbahnberechnungMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExFlugbahnberechnung exFlugbahnberechnung;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::exFlugbahnberechnungDatenFromJson(dataObj, exFlugbahnberechnung.flugbahnberechnungDaten, bOk);
|
||||
MsgCompares::compareFlugbahnberechnungDaten(exFlugbahnberechnung.flugbahnberechnungDaten);
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFlugbahnberechnung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFlugbahnberechnung();
|
||||
QString generateFlugbahnberechnung();
|
||||
|
||||
private slots:
|
||||
void testExFlugbahnberechnung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
#include "ex_flugbahndaten.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFlugbahndaten::TestExFlugbahndaten()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFlugbahndaten::generateFlugbahndaten()
|
||||
{
|
||||
AdlerJson::ExFlugbahndaten req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFlugbahndaten(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFlugbahndaten::testExFlugbahndaten()
|
||||
{
|
||||
qDebug() << "-----------------------------";
|
||||
qDebug() << "--- EX-Flugbahndaten ---";
|
||||
QString flugbahndatenMessage = generateFlugbahndaten();
|
||||
qDebug() << "EX-Flugbahndaten=" << flugbahndatenMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(flugbahndatenMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExFlugbahndaten exFlugbahndaten;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::flugbahndatenFromJson(dataObj, exFlugbahndaten.flugbahndaten, bOk);
|
||||
MsgCompares::compareFlugbahndaten(exFlugbahndaten.flugbahndaten);
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFlugbahndaten : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFlugbahndaten();
|
||||
QString generateFlugbahndaten();
|
||||
|
||||
private slots:
|
||||
void testExFlugbahndaten();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
#include "ex_fq_abgefeuert.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqAbgefeuert::TestExFqAbgefeuert()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqAbgefeuert::generateAbgefeuertMessage()
|
||||
{
|
||||
AdlerJson::ExAbgefeuert req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateAbgefeuert(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqAbgefeuert::testExFqAbgefeuert()
|
||||
{
|
||||
qDebug() << "---------------------------------------";
|
||||
qDebug() << "--- EX-FQ(AF) Abgefeuert ---";
|
||||
QString abgefeuertMessage = generateAbgefeuertMessage();
|
||||
qDebug() << "abgefeuertMessage=" << abgefeuertMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(abgefeuertMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerkampfdaten feuerkampfdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerkampfdatenFromJson(dataObj, feuerkampfdaten, bOk);
|
||||
|
||||
QCOMPARE(feuerkampfdaten.feuerkampfReferenz, QStringLiteral("feuerkampfReferenz 1"));
|
||||
QCOMPARE(feuerkampfdaten.verein, QStringLiteral("AB7X"));
|
||||
QCOMPARE(feuerkampfdaten.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqAbgefeuert : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqAbgefeuert();
|
||||
QString generateAbgefeuertMessage();
|
||||
|
||||
private slots:
|
||||
void testExFqAbgefeuert();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
#include "ex_fq_feuerbereit.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqFeuerbereit::TestExFqFeuerbereit()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqFeuerbereit::generateFeuerbereitMessage()
|
||||
{
|
||||
AdlerJson::ExFeuerbereit req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFeuerbereit(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqFeuerbereit::testExFqFeuerbereit()
|
||||
{
|
||||
qDebug() << "---------------------------------------";
|
||||
qDebug() << "--- EX-FQ(FB) Feuerbereit ---";
|
||||
QString feuerbereitMessage = generateFeuerbereitMessage();
|
||||
qDebug() << "feuerbereitMessage=" << feuerbereitMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(feuerbereitMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerkampfdaten feuerkampfdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerkampfdatenFromJson(dataObj, feuerkampfdaten, bOk);
|
||||
|
||||
QCOMPARE(feuerkampfdaten.feuerkampfReferenz, QStringLiteral("feuerkampfReferenz 1"));
|
||||
QCOMPARE(feuerkampfdaten.verein, QStringLiteral("AB7X"));
|
||||
QCOMPARE(feuerkampfdaten.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqFeuerbereit : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqFeuerbereit();
|
||||
QString generateFeuerbereitMessage();
|
||||
|
||||
private slots:
|
||||
void testExFqFeuerbereit();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
#include "ex_fq_feuerkampf.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqFeuerkampf::TestExFqFeuerkampf()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqFeuerkampf::generateFeuerkampf()
|
||||
{
|
||||
AdlerJson::ExFeuerkampf req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFeuerkampf(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqFeuerkampf::testExFqFeuerkampf()
|
||||
{
|
||||
qDebug() << "-------------------------------";
|
||||
qDebug() << "--- EX-FQ(BA-BB) Feuerkampf ---";
|
||||
QString feuerkampfMessage = generateFeuerkampf();
|
||||
qDebug() << "feuerkampfMessage=" << feuerkampfMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(feuerkampfMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqFeuerkampf : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqFeuerkampf();
|
||||
QString generateFeuerkampf();
|
||||
|
||||
private slots:
|
||||
void testExFqFeuerkampf();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
#include "ex_fq_feuern.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqFeuern::TestExFqFeuern()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqFeuern::generateFeuernMessage()
|
||||
{
|
||||
AdlerJson::ExFeuern req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFeuern(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqFeuern::testExFqFeuern()
|
||||
{
|
||||
qDebug() << "---------------------------------------";
|
||||
qDebug() << "--- EX-FQ(FN) Feuern ---";
|
||||
QString feuernMessage = generateFeuernMessage();
|
||||
qDebug() << "feuerbereitMessage=" << feuernMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(feuernMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerkampfdaten feuerkampfdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerkampfdatenFromJson(dataObj, feuerkampfdaten, bOk);
|
||||
|
||||
QCOMPARE(feuerkampfdaten.feuerkampfReferenz, QStringLiteral("feuerkampfReferenz 1"));
|
||||
QCOMPARE(feuerkampfdaten.verein, QStringLiteral("AB7X"));
|
||||
QCOMPARE(feuerkampfdaten.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqFeuern : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqFeuern();
|
||||
QString generateFeuernMessage();
|
||||
|
||||
private slots:
|
||||
void testExFqFeuern();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
#include "ex_fq_vollzugsmeldung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqVollzugsmeldung::TestExFqVollzugsmeldung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqVollzugsmeldung::generateVollzugsmeldungMessage()
|
||||
{
|
||||
AdlerJson::ExVollzugsmeldung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateVollzugsmeldung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqVollzugsmeldung::testExFqVollzugsmeldung()
|
||||
{
|
||||
qDebug() << "---------------------------------------";
|
||||
qDebug() << "--- EX-FQ(VM) Vollzugsmeldung ---";
|
||||
QString vollzugsmeldungMessage = generateVollzugsmeldungMessage();
|
||||
qDebug() << "generateVollzugsmeldungMessage=" << vollzugsmeldungMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(vollzugsmeldungMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerkampfdaten feuerkampfdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerkampfdatenFromJson(dataObj, feuerkampfdaten, bOk);
|
||||
|
||||
QCOMPARE(feuerkampfdaten.feuerkampfReferenz, QStringLiteral("feuerkampfReferenz 1"));
|
||||
QCOMPARE(feuerkampfdaten.verein, QStringLiteral("AB7X"));
|
||||
qDebug() << "L27_EffectorId=" << AdlerJson::waffensystemkennerMap.key(feuerkampfdaten.kenner);
|
||||
QCOMPARE(feuerkampfdaten.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqVollzugsmeldung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqVollzugsmeldung();
|
||||
QString generateVollzugsmeldungMessage();
|
||||
|
||||
private slots:
|
||||
void testExFqVollzugsmeldung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
#include "ex_fq_wirkfeldplanung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExFqWirkfeldplanung::TestExFqWirkfeldplanung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExFqWirkfeldplanung::generateWirkfeldplanungMessage()
|
||||
{
|
||||
AdlerJson::ExAwesPlanning req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateEXFQBABBFK(req);
|
||||
req.wirkfeldplanungData.feuerkampfReferenz = QStringLiteral("REF:2078669041");
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExFqWirkfeldplanung::testExFqWirkfeldplanung()
|
||||
{
|
||||
qDebug() << "---------------------------------------";
|
||||
qDebug() << "--- EX-FQ(BA-BB-FK) Wirkfeldplanung ---";
|
||||
QString wirkfeldplanungMessage = generateWirkfeldplanungMessage();
|
||||
qDebug() << "wirkfeldplanungMessage= " << wirkfeldplanungMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(wirkfeldplanungMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::WirkfeldplanungData wirkfeldplanungData;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::wirkfeldplanungDataFromJson(dataObj, wirkfeldplanungData, bOk);
|
||||
|
||||
QString messageFromJson = QString::fromUtf8(QJsonDocument(dataObj).toJson());
|
||||
qDebug() << "wirkfeldplanungMessage From Json= " << messageFromJson;
|
||||
|
||||
QCOMPARE(wirkfeldplanungData.feuerkampfReferenz, QStringLiteral("REF:2078669041") );
|
||||
|
||||
MsgCompares::compareZieldaten(wirkfeldplanungData.zieldaten);
|
||||
|
||||
QCOMPARE(wirkfeldplanungData.abfeuerungsArt, AdlerJson::Abfeuerungsart::A);
|
||||
QCOMPARE(wirkfeldplanungData.forderung, ProjectDataManagement::L7_Request::VER);
|
||||
QCOMPARE(wirkfeldplanungData.dauer, 30);
|
||||
|
||||
qDebug() << "--- Feuerkommandos: ---";
|
||||
MsgCompares::compareFeuerkommando(wirkfeldplanungData.feuerkommando);
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExFqWirkfeldplanung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExFqWirkfeldplanung();
|
||||
QString generateWirkfeldplanungMessage();
|
||||
|
||||
private slots:
|
||||
void testExFqWirkfeldplanung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_hq_fuehrungslinien.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExHqFuehrungslinien::TestExHqFuehrungslinien()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExHqFuehrungslinien::generateFuehrungslinien()
|
||||
{
|
||||
AdlerJson::ExHqFuehrungslinien req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateFuehrungslinien(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExHqFuehrungslinien::testExHqFuehrungslinien()
|
||||
{
|
||||
qDebug() << "-------------------------------------------";
|
||||
qDebug() << "--- EX-HQ(G) Fuehrungslinien und Grenzen ---";
|
||||
QString fuehrungslinienMessage = generateFuehrungslinien();
|
||||
qDebug() << "EX-HQ(G) Fuehrungslinien und Grenzen=" << fuehrungslinienMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(fuehrungslinienMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExHqFuehrungslinien exHqFuehrungslinien;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::fuehrungsdatenFromJson(dataObj, exHqFuehrungslinien.fuehrungsdaten, bOk);
|
||||
MsgCompares::compareFuehrungsdaten(exHqFuehrungslinien.fuehrungsdaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExHqFuehrungslinien : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExHqFuehrungslinien();
|
||||
QString generateFuehrungslinien();
|
||||
|
||||
private slots:
|
||||
void testExHqFuehrungslinien();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
Executable
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_hq_koordinierungsmassnahmen.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExHqKoordinierungsmassnahmen::TestExHqKoordinierungsmassnahmen()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExHqKoordinierungsmassnahmen::generateKoordinierungsmassnahmen()
|
||||
{
|
||||
AdlerJson::ExHqKoordinierungsmassnahmen req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateKoordinierungsmassnahmen(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExHqKoordinierungsmassnahmen::testExHqKoordinierungsmassnahmen()
|
||||
{
|
||||
qDebug() << "-----------------------------------------";
|
||||
qDebug() << "--- EX-HQ(K) Koordinierungsmassnahmen ---";
|
||||
QString koordinierungsmassnahmenMessage = generateKoordinierungsmassnahmen();
|
||||
qDebug() << "EX-HQ(K) Koordinierungsmassnahmen=" << koordinierungsmassnahmenMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(koordinierungsmassnahmenMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExHqKoordinierungsmassnahmen exHqKoordinierungsmassnahmen;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::koordinierungsdatenFromJson(dataObj, exHqKoordinierungsmassnahmen.koordinierungsdaten, bOk);
|
||||
MsgCompares::compareKoordinierungsdaten(exHqKoordinierungsmassnahmen.koordinierungsdaten);
|
||||
|
||||
|
||||
}
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExHqKoordinierungsmassnahmen : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExHqKoordinierungsmassnahmen();
|
||||
QString generateKoordinierungsmassnahmen();
|
||||
|
||||
private slots:
|
||||
void testExHqKoordinierungsmassnahmen();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
#include "ex_mq_manuelle_quittung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExMqManuelleQuittung::TestExMqManuelleQuittung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExMqManuelleQuittung::generateManuelleQuittung()
|
||||
{
|
||||
AdlerJson::ExMqManuelleQuittung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateManuelleQuittung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExMqManuelleQuittung::testExMqManuelleQuittung()
|
||||
{
|
||||
qDebug() << "-------------------------------";
|
||||
qDebug() << "--- EX-MQ Manuelle Quittung ---";
|
||||
QString manuelleQuittungMessage = generateManuelleQuittung();
|
||||
qDebug() << "EX-MQ Manuelle Quittung=" << manuelleQuittungMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(manuelleQuittungMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExMqManuelleQuittung exMqManuelleQuittung;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::mqManuelleQuittungDatenFromJson(dataObj, exMqManuelleQuittung.mqManuelleQuittungDaten, bOk);
|
||||
MsgCompares::compareManuelleQuittungDaten(exMqManuelleQuittung.mqManuelleQuittungDaten);
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExMqManuelleQuittung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExMqManuelleQuittung();
|
||||
QString generateManuelleQuittung();
|
||||
|
||||
private slots:
|
||||
void testExMqManuelleQuittung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_sq_stellungsmeldung_fs.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExStellungsmeldungFS::TestExStellungsmeldungFS()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExStellungsmeldungFS::generateStellungFS()
|
||||
{
|
||||
AdlerJson::ExFeuerstellungFS req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateStellungsmeldungFS(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExStellungsmeldungFS::testExStellungsmeldungFS()
|
||||
{
|
||||
qDebug() << "------------------------------------------------";
|
||||
qDebug() << "--- EX-SQ(FS) Stellungsmeldung Feuerstellung ---";
|
||||
QString stellungFSMessage = generateStellungFS();
|
||||
qDebug() << "EX-SQ(FS) Stellungsmeldung Feuerstellung=" << stellungFSMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(stellungFSMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Feuerstellungsdaten feuerstellungsdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::feuerstellungsdatenFromJson(dataObj, feuerstellungsdaten, bOk);
|
||||
MsgCompares::compareFeuerstellungsdaten(feuerstellungsdaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExStellungsmeldungFS : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExStellungsmeldungFS();
|
||||
QString generateStellungFS();
|
||||
|
||||
private slots:
|
||||
void testExStellungsmeldungFS();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_sq_stellungsmeldung_lp.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExStellungsmeldungLP::TestExStellungsmeldungLP()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExStellungsmeldungLP::generateStellungLP()
|
||||
{
|
||||
AdlerJson::ExFeuerstellungLP req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateStellungsmeldungLP(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExStellungsmeldungLP::testExStellungsmeldungLP()
|
||||
{
|
||||
qDebug() << "--------------------------------------------";
|
||||
qDebug() << "--- EX-SQ(LP) Stellungsmeldung Ladeplatz ---";
|
||||
QString stellungLPMessage = generateStellungLP();
|
||||
qDebug() << "EX-SQ(LP) Stellungsmeldung Ladeplatz=" << stellungLPMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(stellungLPMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Ladeplatzdaten ladeplatzdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::ladeplatzdatenFromJson(dataObj, ladeplatzdaten, bOk);
|
||||
MsgCompares::compareLadeplatzdaten(ladeplatzdaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExStellungsmeldungLP : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExStellungsmeldungLP();
|
||||
QString generateStellungLP();
|
||||
|
||||
private slots:
|
||||
void testExStellungsmeldungLP();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_sq_stellungsmeldung_ws.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExStellungsmeldungWS::TestExStellungsmeldungWS()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExStellungsmeldungWS::generateStellungWS()
|
||||
{
|
||||
AdlerJson::ExFeuerstellungWS req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateStellungsmeldungWS(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExStellungsmeldungWS::testExStellungsmeldungWS()
|
||||
{
|
||||
qDebug() << "------------------------------------------------";
|
||||
qDebug() << "--- EX-SQ(WS) Stellungsmeldung Waffensystem ---";
|
||||
QString stellungWSMessage = generateStellungWS();
|
||||
qDebug() << "EX-SQ(WS) Stellungsmeldung Waffensystem=" << stellungWSMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(stellungWSMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Waffensystemdaten waffensystemdaten;
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::waffensystemdatenFromJson(dataObj, waffensystemdaten, bOk);
|
||||
MsgCompares::compareWaffensystemdaten(waffensystemdaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExStellungsmeldungWS : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExStellungsmeldungWS();
|
||||
QString generateStellungWS();
|
||||
|
||||
private slots:
|
||||
void testExStellungsmeldungWS();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
#include "ex_sq_stellungswechsel.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExStellungswechsel::TestExStellungswechsel()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExStellungswechsel::generateStellungswechsel()
|
||||
{
|
||||
AdlerJson::ExStellungswechsel req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateStellungswechsel(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExStellungswechsel::testExStellungswechsel()
|
||||
{
|
||||
qDebug() << "---------------------------";
|
||||
qDebug() << "--- EX-Stellungswechsel ---";
|
||||
QString stellungswechselMessage = generateStellungswechsel();
|
||||
qDebug() << "EX-Stellungswechsel=" << stellungswechselMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(stellungswechselMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::Stellungswechseldaten stellungswechseldaten;
|
||||
|
||||
bool bOk;
|
||||
|
||||
|
||||
AdlerJson::stellungswechseldatenFromJson(dataObj, stellungswechseldaten, bOk);
|
||||
MsgCompares::compareStellungswechseldaten(stellungswechseldaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExStellungswechsel : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExStellungswechsel();
|
||||
QString generateStellungswechsel();
|
||||
|
||||
private slots:
|
||||
void testExStellungswechsel();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
#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 );
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExStatus : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExStatus();
|
||||
QString generateStatusMessage();
|
||||
|
||||
private slots:
|
||||
void testExStatus();
|
||||
|
||||
private:
|
||||
int m_saaId {0};
|
||||
};
|
||||
+46
@@ -0,0 +1,46 @@
|
||||
#include "ex_tq_technische_quittung.h"
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <QJsonDocument>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
#include "msgcompares.h"
|
||||
|
||||
#include <AdlerJson/generatetelegrams.h>
|
||||
|
||||
TestExTqTechnischeQuittung::TestExTqTechnischeQuittung()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
QString TestExTqTechnischeQuittung::generateTechnischeQuittung()
|
||||
{
|
||||
AdlerJson::ExTqTechnischeQuittung req;
|
||||
|
||||
GenerateTelegrams::addHeaderData(req, m_saaId);
|
||||
GenerateTelegrams::generateTechnischeQuittung(req);
|
||||
|
||||
QJsonObject messageObj =req.toJson();
|
||||
QString message = QString::fromUtf8(QJsonDocument(messageObj).toJson());
|
||||
return message;
|
||||
}
|
||||
|
||||
void TestExTqTechnischeQuittung::testExTqTechnischeQuittung()
|
||||
{
|
||||
qDebug() << "------------------------------------";
|
||||
qDebug() << "--- EX-TQ Technische Quittierung ---";
|
||||
QString fuehrungslinienMessage = generateTechnischeQuittung();
|
||||
qDebug() << "EX-TQ Technische Quittierung=" << fuehrungslinienMessage;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(fuehrungslinienMessage.toUtf8());
|
||||
const QJsonObject jsonObj = jsonDoc.object();
|
||||
QJsonObject dataObj = jsonObj[AdlerJson::JsonKeys::DATA()].toObject();
|
||||
|
||||
AdlerJson::ExTqTechnischeQuittung exTqTechnischeQuittung;
|
||||
|
||||
bool bOk;
|
||||
|
||||
AdlerJson::technischeDatenFromJson(dataObj, exTqTechnischeQuittung.technischeDaten, bOk);
|
||||
MsgCompares::compareTechnischeDaten(exTqTechnischeQuittung.technischeDaten);
|
||||
|
||||
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include<QString>
|
||||
#include <QtTest/QTest>
|
||||
|
||||
namespace AdlerJson {
|
||||
struct EXTelegramBase;
|
||||
//enum class Szenarstatus;
|
||||
}
|
||||
|
||||
class TestExTqTechnischeQuittung : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
TestExTqTechnischeQuittung();
|
||||
QString generateTechnischeQuittung();
|
||||
|
||||
private slots:
|
||||
void testExTqTechnischeQuittung();
|
||||
|
||||
private:
|
||||
|
||||
int m_partyId {0};
|
||||
int m_saaId {1};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,329 @@
|
||||
#include "msgcompares.h"
|
||||
#include "../telegrams.h"
|
||||
|
||||
#include <QtTest/QTest>
|
||||
|
||||
MsgCompares::MsgCompares()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void MsgCompares::compareZieldaten(const AdlerJson::Zieldaten& zieldaten)
|
||||
{
|
||||
qDebug() << "--- Begin compareZieldaten EX-L12 ---";
|
||||
QCOMPARE(zieldaten.nummer, 7);
|
||||
QCOMPARE(zieldaten.geometrie, ProjectDataManagement::L4_TargetGeometry::Point);
|
||||
qDebug() << "--- koordinate ---";
|
||||
QCOMPARE(zieldaten.koordinate.hoehe, 0);
|
||||
QCOMPARE(zieldaten.koordinate.koordinate.latitude, 53.0672);
|
||||
QCOMPARE(zieldaten.koordinate.koordinate.longitude, 8.86687);
|
||||
qDebug() << "--- relativKoordinate ---";
|
||||
QCOMPARE(zieldaten.relativKoordinate.hoehe, 5);
|
||||
QCOMPARE(zieldaten.relativKoordinate.koordinate.latitude, 53.8);
|
||||
QCOMPARE(zieldaten.relativKoordinate.koordinate.longitude, 8.8);
|
||||
|
||||
QCOMPARE(zieldaten.breiteRadius, 25);
|
||||
QCOMPARE(zieldaten.tiefe, 26);
|
||||
QCOMPARE(zieldaten.zielachse, 17);
|
||||
QCOMPARE(zieldaten.zog, 7);
|
||||
QCOMPARE(zieldaten.elemente, 1);
|
||||
QCOMPARE(zieldaten.typ, QStringLiteral("PERS"));
|
||||
QCOMPARE(zieldaten.subTyp, QStringLiteral("APERS"));
|
||||
qDebug() << "--- End compareZieldaten EX-L12 ---";
|
||||
}
|
||||
|
||||
void MsgCompares::compareFlugbahnpunkt0(const AdlerJson::Flugbahnpunkt &flugbahnpunkt)
|
||||
{
|
||||
QCOMPARE(flugbahnpunkt.xRelativ, 200.0);
|
||||
QCOMPARE(flugbahnpunkt.yRelativ, 77.0);
|
||||
QCOMPARE(flugbahnpunkt.zRelativ, 300.0);
|
||||
QCOMPARE(flugbahnpunkt.zeit, 17.0);
|
||||
}
|
||||
void MsgCompares::compareFlugbahnpunkt1(const AdlerJson::Flugbahnpunkt &flugbahnpunkt)
|
||||
{
|
||||
QCOMPARE(flugbahnpunkt.xRelativ, 900.0);
|
||||
QCOMPARE(flugbahnpunkt.yRelativ, 177.0);
|
||||
QCOMPARE(flugbahnpunkt.zRelativ, 700.0);
|
||||
QCOMPARE(flugbahnpunkt.zeit, 19.0);
|
||||
}
|
||||
|
||||
void MsgCompares::compareStreuung(const AdlerJson::Streuungsdaten &streuung)
|
||||
{
|
||||
QCOMPARE(streuung.seitenstreuungH, 0.7);
|
||||
QCOMPARE(streuung.laengsstreuungH, 0.3);
|
||||
QCOMPARE(streuung.seitenstreuung, 0.7);
|
||||
QCOMPARE(streuung.laengsstreuung, 7.7);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFeuerkommando(const AdlerJson::Feuerkommando &feuerkommando)
|
||||
{
|
||||
//QCOMPARE(feuerkommando.verein, QStringLiteral("AB7X"));
|
||||
QCOMPARE(feuerkommando.typ, ProjectDataManagement::L26_EffectingSystemType::RRohr);
|
||||
qDebug() << "feuerkommando.wirkmittel.size=" << feuerkommando.wirkmittel.size();
|
||||
AdlerJson::WirkmittelFeuerkommando wfk = feuerkommando.wirkmittel[0];
|
||||
QCOMPARE(wfk.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
AdlerJson::KoordinateMitHoehe ap = wfk.auftreffpunkt;
|
||||
QCOMPARE(ap.hoehe, 0);
|
||||
QCOMPARE(ap.koordinate.latitude, 53.0672);
|
||||
QCOMPARE(ap.koordinate.longitude, 8.86687);
|
||||
QCOMPARE(wfk.flugzeit, 30);
|
||||
QCOMPARE(wfk.gipfelhoehe, 377);
|
||||
QCOMPARE(wfk.schussrichtung, 177);
|
||||
|
||||
compareFlugbahnpunkt0(wfk.flugbahnpunkt[0]);
|
||||
compareFlugbahnpunkt1(wfk.flugbahnpunkt[1]);
|
||||
compareStreuung(wfk.streuung);
|
||||
|
||||
MsgCompares::compareFeuerkommandoGeschosse(wfk.geschoss);
|
||||
compareWirkmittelFeuerkommandoRakete (feuerkommando.wirkmittelRakete);
|
||||
}
|
||||
|
||||
void MsgCompares::compareWirkmittelFeuerkommandoRakete(const QVector<AdlerJson::WirkmittelFeuerkommandoRakete> &wfrs)
|
||||
{
|
||||
qDebug() << "compareFeuerkommando Rakete"
|
||||
<< ", wfrs.size=" << wfrs.size()
|
||||
<< ", wfrs[0].treffpunkte,size=" << wfrs[0].treffpunkte.size();
|
||||
|
||||
AdlerJson::Treffpunkt treffpunkt = wfrs[0].treffpunkte[0];
|
||||
QCOMPARE (treffpunkt.anzahl, 1);
|
||||
QCOMPARE (treffpunkt.koordinate.koordinate.latitude , 5.5);
|
||||
QCOMPARE (treffpunkt.koordinate.koordinate.longitude, 6.6);
|
||||
QCOMPARE (treffpunkt.koordinate.hoehe, 7);
|
||||
QCOMPARE (wfrs[0].kenner , ProjectDataManagement::L27_EffectorId::B1);
|
||||
QCOMPARE (wfrs[0].flugzeit, 456.3);
|
||||
QCOMPARE (wfrs[0].gipfelhoehe, 300);
|
||||
QCOMPARE (wfrs[0].schussrichtung, 30.0);
|
||||
QCOMPARE (wfrs[0].fallwinkel, 5);
|
||||
QCOMPARE (wfrs[0].anflug, ProjectDataManagement::L48_TrajectoryRocket::Nominal);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFeuerkommandoGeschosse(const AdlerJson::FeuerkommandoGeschosse &feuerkommandoGeschosse)
|
||||
{
|
||||
QCOMPARE(feuerkommandoGeschosse.geschosssorte, QStringLiteral("Mine DM72"));
|
||||
QCOMPARE(feuerkommandoGeschosse.ladung, QStringLiteral("M DM72"));
|
||||
QCOMPARE(feuerkommandoGeschosse.zuender, QStringLiteral("Aufschlag BB DM371"));
|
||||
QCOMPARE(feuerkommandoGeschosse.zuenderFunktion, QStringLiteral("AZoV"));
|
||||
QCOMPARE(feuerkommandoGeschosse.zuenderZeit, 0);
|
||||
QCOMPARE(feuerkommandoGeschosse.anzahl, 7);
|
||||
QCOMPARE(feuerkommandoGeschosse.intervall, 1.0);
|
||||
|
||||
}
|
||||
|
||||
void MsgCompares::compareFeuerHaltDaten(const AdlerJson::FeuerHaltDaten &feuerHaltDaten)
|
||||
{
|
||||
QCOMPARE(feuerHaltDaten.kategorie, ProjectDataManagement::L22_FireHaltCategory::E);
|
||||
QCOMPARE(feuerHaltDaten.feuerkampfReferenz, QStringLiteral("feuerHaltDaten"));
|
||||
QCOMPARE(feuerHaltDaten.zpNummer, 5);
|
||||
QCOMPARE(feuerHaltDaten.koordinate.latitude, 53.37791);
|
||||
QCOMPARE(feuerHaltDaten.koordinate.longitude, 8.759);
|
||||
QCOMPARE(feuerHaltDaten.radius, 50);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFeuerstellungsdatenKoordinaten(const QVector<AdlerJson::KoordinateMitHoehe> &koordinaten)
|
||||
{
|
||||
QCOMPARE(koordinaten[0].hoehe, 22);
|
||||
QCOMPARE(koordinaten[0].koordinate.latitude, 53.37792);
|
||||
QCOMPARE(koordinaten[0].koordinate.longitude, 8.760);
|
||||
QCOMPARE(koordinaten[1].hoehe, 23);
|
||||
QCOMPARE(koordinaten[1].koordinate.latitude, 53.37793);
|
||||
QCOMPARE(koordinaten[1].koordinate.longitude, 8.761);
|
||||
}
|
||||
|
||||
void MsgCompares::compareGeschosse(const QVector<AdlerJson::Geschoss> &geschosse)
|
||||
{
|
||||
QCOMPARE(geschosse[0].geschosssorte, QStringLiteral("Mine DM72"));
|
||||
QCOMPARE(geschosse[0].zuender, QStringLiteral("Doppel DM183"));
|
||||
QCOMPARE(geschosse[0].ladung, QStringLiteral("M DM72"));
|
||||
QCOMPARE(geschosse[0].anzahl, 6);
|
||||
|
||||
QCOMPARE(geschosse[1].geschosssorte, QStringLiteral("Leucht DM116"));
|
||||
QCOMPARE(geschosse[1].ladung, QStringLiteral("B L8A1"));
|
||||
QCOMPARE(geschosse[1].zuender, QStringLiteral("Aufschlag BB DM371"));
|
||||
QCOMPARE(geschosse[1].anzahl, 7);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFeuerstellungsdaten(const AdlerJson::Feuerstellungsdaten &feuerstellungsdaten)
|
||||
{
|
||||
QCOMPARE(feuerstellungsdaten.typ, ProjectDataManagement::L26_EffectingSystemType::RRohr);
|
||||
QCOMPARE(feuerstellungsdaten.status, ProjectDataManagement::L28_Status::Einsatzbereit);
|
||||
QCOMPARE(feuerstellungsdaten.feuereinheit.verein, QStringLiteral("verein ExFeuerstellungFS"));
|
||||
QCOMPARE(feuerstellungsdaten.feuereinheit.r, 5);
|
||||
QCOMPARE(feuerstellungsdaten.feuereinheit.oi, ProjectDataManagement::L19_Oi::F3);
|
||||
QCOMPARE(feuerstellungsdaten.mittelpunkt.koordinate.latitude, 53.37791);
|
||||
QCOMPARE(feuerstellungsdaten.mittelpunkt.koordinate.longitude, 8.759);
|
||||
QCOMPARE(feuerstellungsdaten.mittelpunkt.hoehe, 20);
|
||||
MsgCompares::compareFeuerstellungsdatenKoordinaten(feuerstellungsdaten.koordinaten);
|
||||
MsgCompares::compareGeschosse(feuerstellungsdaten.geschosse);
|
||||
|
||||
}
|
||||
|
||||
void MsgCompares::compareWaffensystemdaten(const AdlerJson::Waffensystemdaten &waffensystemdaten)
|
||||
{
|
||||
QCOMPARE(waffensystemdaten.typ, ProjectDataManagement::L26_EffectingSystemType::RRohr);
|
||||
QCOMPARE(waffensystemdaten.kenner, ProjectDataManagement::L27_EffectorId::B1);
|
||||
QCOMPARE(waffensystemdaten.status, ProjectDataManagement::L28_Status::NichtEinsatzbereit);
|
||||
QCOMPARE(waffensystemdaten.einheit.verein, QStringLiteral("AB7X"));
|
||||
QCOMPARE(waffensystemdaten.einheit.r, 6);
|
||||
QCOMPARE(waffensystemdaten.einheit.oi, ProjectDataManagement::L19_Oi::F6);
|
||||
MsgCompares::compareGeschosse(waffensystemdaten.geschosse);
|
||||
QCOMPARE(waffensystemdaten.koordinate.koordinate.latitude, 53.088354);
|
||||
QCOMPARE(waffensystemdaten.koordinate.koordinate.longitude, 8.853092);
|
||||
QCOMPARE(waffensystemdaten.koordinate.hoehe, 20);
|
||||
|
||||
QCOMPARE(waffensystemdaten.wirkungsbereich.grundrichtung, 1);
|
||||
QCOMPARE(waffensystemdaten.wirkungsbereich.links, 2);
|
||||
QCOMPARE(waffensystemdaten.wirkungsbereich.rechts, 3);
|
||||
}
|
||||
|
||||
void MsgCompares::compareLadeplatzdaten(const AdlerJson::Ladeplatzdaten &ladeplatzdaten)
|
||||
{
|
||||
QCOMPARE(ladeplatzdaten.einheit.oi , ProjectDataManagement::L19_Oi::F3);
|
||||
QCOMPARE(ladeplatzdaten.einheit.r, 5);
|
||||
QCOMPARE(ladeplatzdaten.einheit.verein, QStringLiteral("verein StellungsmeldungLP"));
|
||||
QCOMPARE(ladeplatzdaten.koordinate.koordinate.latitude, 53.37791);
|
||||
QCOMPARE(ladeplatzdaten.koordinate.koordinate.longitude, 8.759);
|
||||
QCOMPARE(ladeplatzdaten.koordinate.hoehe, 20);
|
||||
MsgCompares::compareGeschosse(ladeplatzdaten.geschosse);
|
||||
}
|
||||
|
||||
void MsgCompares::compareStellungswechseldaten(const AdlerJson::Stellungswechseldaten &stellungswechseldaten)
|
||||
{
|
||||
QCOMPARE(stellungswechseldaten.oi, ProjectDataManagement::L19_Oi::F3);
|
||||
QCOMPARE(stellungswechseldaten.r, 5);
|
||||
QCOMPARE(stellungswechseldaten.verein, QStringLiteral("verein ExStellungswechsel"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareZeitAb(const AdlerJson::Zeitangabe_DTG &zeit)
|
||||
{
|
||||
QCOMPARE(zeit.stunden, 5);
|
||||
QCOMPARE(zeit.minuten, 35);
|
||||
QCOMPARE(zeit.sekunden, 55);
|
||||
QCOMPARE(zeit.tag, 12);
|
||||
QCOMPARE(zeit.monat, 11);
|
||||
QCOMPARE(zeit.jahr, 2025);
|
||||
QCOMPARE(zeit.ZVz, QStringLiteral("ZVz"));
|
||||
QCOMPARE(zeit.ZDS, QStringLiteral("ZDS"));
|
||||
QCOMPARE(zeit.ZDM, QStringLiteral("ZDM"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareZeitBis(const AdlerJson::Zeitangabe_DTG &zeit)
|
||||
{
|
||||
QCOMPARE(zeit.stunden, 5);
|
||||
QCOMPARE(zeit.minuten, 35);
|
||||
QCOMPARE(zeit.sekunden, 55);
|
||||
QCOMPARE(zeit.tag, 13);
|
||||
QCOMPARE(zeit.monat, 11);
|
||||
QCOMPARE(zeit.jahr, 2025);
|
||||
QCOMPARE(zeit.ZVz, QStringLiteral("ZVz"));
|
||||
QCOMPARE(zeit.ZDS, QStringLiteral("ZDS"));
|
||||
QCOMPARE(zeit.ZDM, QStringLiteral("ZDM"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareKoordinaten(const QVector<AdlerJson::Koordinate> &koordinaten)
|
||||
{
|
||||
QCOMPARE ( koordinaten[0].latitude, 53.37792 );
|
||||
QCOMPARE ( koordinaten[0].longitude, 8.760 );
|
||||
QCOMPARE ( koordinaten[1].latitude, 53.37793 );
|
||||
QCOMPARE ( koordinaten[1].longitude, 8.761 );
|
||||
}
|
||||
|
||||
void MsgCompares::compareKoordinierungsdaten(const AdlerJson::Koordinierungsdaten &koordinierungsdaten)
|
||||
{
|
||||
QCOMPARE(koordinierungsdaten.art, ProjectDataManagement::L25_KindGuidingLine::NFA);
|
||||
QCOMPARE(koordinierungsdaten.name, QStringLiteral("Name ExHqKoordinierungsmassnahme"));
|
||||
QCOMPARE(koordinierungsdaten.truppenteil, QStringLiteral("Truppenteil ExHqKoordinierungsmassnahme"));
|
||||
compareZeitAb(koordinierungsdaten.ab);
|
||||
compareZeitBis(koordinierungsdaten.bis);
|
||||
compareKoordinaten(koordinierungsdaten.koordinaten);
|
||||
QCOMPARE(koordinierungsdaten.mittelpunkt.latitude, 53.37794);
|
||||
QCOMPARE(koordinierungsdaten.mittelpunkt.longitude, 8.762);
|
||||
QCOMPARE(koordinierungsdaten.radius, 66);
|
||||
QCOMPARE(koordinierungsdaten.maxGipfel, 123);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFuehrungsdaten(const AdlerJson::Fuehrungsdaten &fuehrungsdaten)
|
||||
{
|
||||
QCOMPARE(fuehrungsdaten.art, AdlerJson::Art_L24::AO);
|
||||
QCOMPARE(fuehrungsdaten.name, QStringLiteral("Name EX-HQ(G) Führungslinien und Grenzen"));
|
||||
compareZeitAb(fuehrungsdaten.ab);
|
||||
compareZeitBis(fuehrungsdaten.bis);
|
||||
compareKoordinaten(fuehrungsdaten.koordinaten);
|
||||
QCOMPARE(fuehrungsdaten.linkerNachbar, QStringLiteral("linker Nachbar"));
|
||||
QCOMPARE(fuehrungsdaten.rechterNachbar, QStringLiteral("rechter Nachbar"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareTechnischeDaten(const AdlerJson::TechnischeDaten &technischeDaten)
|
||||
{
|
||||
QCOMPARE(technischeDaten.status, AdlerJson::Status_L32::INV);
|
||||
QCOMPARE(technischeDaten.beschreibung, QStringLiteral("Beschreibung technischer Status"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareFreitextDaten(const AdlerJson::FreitextDaten &freitextDaten)
|
||||
{
|
||||
QCOMPARE(freitextDaten.text, QStringLiteral("Freier Text"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareManuelleQuittungDaten(const AdlerJson::ManuelleQuittungDaten &manuelleQuittungDaten)
|
||||
{
|
||||
QCOMPARE(manuelleQuittungDaten.feuerkampfreferenz, QStringLiteral("Manuelle Quittung"));
|
||||
}
|
||||
|
||||
void MsgCompares::compareFlugbahnberechnungDaten(const AdlerJson::FlugBerechnungsDaten &flugbahnberechnungDaten)
|
||||
{
|
||||
qDebug() << "compareFlugbahnberechnungDaten 1";
|
||||
QCOMPARE(flugbahnberechnungDaten.geschoss.geschosssorte, QStringLiteral("SMArt DM702"));
|
||||
qDebug() << "compareFlugbahnberechnungDaten 2";
|
||||
QCOMPARE(flugbahnberechnungDaten.geschoss.ladung, QStringLiteral("M DM72"));
|
||||
QCOMPARE(flugbahnberechnungDaten.geschoss.zuender, QStringLiteral("Aufschlag DM241"));
|
||||
QCOMPARE(flugbahnberechnungDaten.geschoss.zuenderFunktion, QStringLiteral("AZoV"));
|
||||
qDebug() << "compareFlugbahnberechnungDaten 3";
|
||||
//QCOMPARE(flugbahnberechnungDaten.geschoss.ladungsNummer, 4);
|
||||
QCOMPARE(flugbahnberechnungDaten.sprenghoehe, 0);
|
||||
qDebug() << "compareFlugbahnberechnungDaten 6";
|
||||
QCOMPARE(flugbahnberechnungDaten.standort.hoehe, 55);
|
||||
qDebug() << "compareFlugbahnberechnungDaten 7";
|
||||
QCOMPARE(flugbahnberechnungDaten.standort.koordinate.latitude, 53.37787);
|
||||
qDebug() << "compareFlugbahnberechnungDaten 8";
|
||||
QCOMPARE(flugbahnberechnungDaten.standort.koordinate.longitude, 8.7573);
|
||||
qDebug() << "compareFlugbahnberechnungDaten 9";
|
||||
QCOMPARE(flugbahnberechnungDaten.waffensystem, ProjectDataManagement::L26_EffectingSystemType::RRohr);
|
||||
qDebug() << "compareFlugbahnberechnungDaten 10";
|
||||
qDebug() << "winkelgruppe=" << AdlerJson::winkelgruppeMap.key(flugbahnberechnungDaten.winkelgruppe);
|
||||
QCOMPARE(flugbahnberechnungDaten.winkelgruppe, AdlerJson::Winkelgruppe::Untere);
|
||||
}
|
||||
|
||||
void MsgCompares::compareFlugbahndaten(const AdlerJson::Flugbahndaten &flugbahndaten)
|
||||
{
|
||||
qDebug() << "compareFlugbahndaten";
|
||||
QCOMPARE(flugbahndaten.fehlercode, AdlerJson::FlugbahnberechnungFehlercode::Ok);
|
||||
qDebug() << "flugbahndaten.zielkoordinate.hoehe = "<< flugbahndaten.zielkoordinate.hoehe;
|
||||
QCOMPARE(flugbahndaten.zielkoordinate.hoehe, 56);
|
||||
QCOMPARE(flugbahndaten.zielkoordinate.koordinate.latitude, 52.482048);
|
||||
QCOMPARE(flugbahndaten.zielkoordinate.koordinate.longitude, 11.583);
|
||||
QCOMPARE(flugbahndaten.waffensystem, ProjectDataManagement::L26_EffectingSystemType::RRohr);
|
||||
QCOMPARE(flugbahndaten.flugzeit, 300);
|
||||
QCOMPARE(flugbahndaten.gipfelhoehe, 200);
|
||||
QCOMPARE(flugbahndaten.schussrichtung, 45);
|
||||
QCOMPARE(flugbahndaten.fallwinkel, 55);
|
||||
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[0].zeit, 1);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[0].xRelativ, 100);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[0].yRelativ, 200);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[0].zRelativ, 10);
|
||||
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[1].zeit, 2);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[1].xRelativ, 200);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[1].yRelativ, 400);
|
||||
QCOMPARE(flugbahndaten.flugbahnpunkt[1].zRelativ, 20);
|
||||
|
||||
QCOMPARE(flugbahndaten.streuung.laengsstreuung, 2.2);
|
||||
QCOMPARE(flugbahndaten.streuung.seitenstreuung, 3.3);
|
||||
QCOMPARE(flugbahndaten.streuung.laengsstreuungH, 4.4);
|
||||
QCOMPARE(flugbahndaten.streuung.seitenstreuungH, 5.5);
|
||||
QCOMPARE(flugbahndaten.geschoss.geschosssorte, QStringLiteral("Spreng DM121"));
|
||||
QCOMPARE(flugbahndaten.geschoss.ladung, QStringLiteral("M DM72"));
|
||||
QCOMPARE(flugbahndaten.geschoss.ladungsNummer, 5);
|
||||
QCOMPARE(flugbahndaten.geschoss.zuender, QStringLiteral("Aufschlag DM241"));
|
||||
QCOMPARE(flugbahndaten.geschoss.zuenderFunktion, QStringLiteral("AZoV"));
|
||||
QCOMPARE(flugbahndaten.geschoss.zuenderZeit, 1000);
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
#ifndef MSGCOMPARES_H
|
||||
#define MSGCOMPARES_H
|
||||
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
class MsgCompares
|
||||
{
|
||||
public:
|
||||
MsgCompares();
|
||||
|
||||
static void compareZieldaten(const AdlerJson::Zieldaten &zieldaten);
|
||||
static void compareZielmeldedaten(const AdlerJson::Zielmeldedaten &zielmeldedaten);
|
||||
static void compareFlugbahnpunkt0(const AdlerJson::Flugbahnpunkt &flugbahnpunkt);
|
||||
static void compareFlugbahnpunkt1(const AdlerJson::Flugbahnpunkt &flugbahnpunkt);
|
||||
static void compareStreuung(const AdlerJson::Streuungsdaten &streuung);
|
||||
static void compareFeuerkommando(const AdlerJson::Feuerkommando &feuerkommando);
|
||||
static void compareWirkmittelFeuerkommandoRakete(const QVector<AdlerJson::WirkmittelFeuerkommandoRakete> &wfrs);
|
||||
static void compareFeuerkommandoGeschosse(const AdlerJson::FeuerkommandoGeschosse &feuerkommandoGeschosse);
|
||||
static void compareFeuerHaltDaten(const AdlerJson::FeuerHaltDaten &feuerHaltDaten);
|
||||
static void compareFeuerstellungsdatenKoordinaten(const QVector<AdlerJson::KoordinateMitHoehe> &koordinaten);
|
||||
static void compareGeschosse(const QVector<AdlerJson::Geschoss> &geschosse);
|
||||
static void compareFeuerstellungsdaten(const AdlerJson::Feuerstellungsdaten &feuerstellungsdaten);
|
||||
static void compareWaffensystemdaten(const AdlerJson::Waffensystemdaten &waffensystemdaten);
|
||||
static void compareLadeplatzdaten(const AdlerJson::Ladeplatzdaten &ladeplatzdaten);
|
||||
static void compareStellungswechseldaten(const AdlerJson::Stellungswechseldaten &stellungswechseldaten);
|
||||
static void compareZeitAb(const AdlerJson::Zeitangabe_DTG &zeit);
|
||||
static void compareZeitBis(const AdlerJson::Zeitangabe_DTG &zeit);
|
||||
static void compareKoordinaten(const QVector<AdlerJson::Koordinate> &koordinaten);
|
||||
static void compareKoordinierungsdaten(const AdlerJson::Koordinierungsdaten &koordinierungsdaten);
|
||||
static void compareFuehrungsdaten(const AdlerJson::Fuehrungsdaten &fuehrungsdaten);
|
||||
static void compareTechnischeDaten(const AdlerJson::TechnischeDaten &technischeDaten);
|
||||
static void compareFreitextDaten(const AdlerJson::FreitextDaten &freitextDaten);
|
||||
static void compareManuelleQuittungDaten(const AdlerJson::ManuelleQuittungDaten &manuelleQuittungDaten);
|
||||
static void compareFlugbahnberechnungDaten(const AdlerJson::FlugBerechnungsDaten &flugbahnberechnungDaten);
|
||||
static void compareFlugbahndaten(const AdlerJson::Flugbahndaten &flugbahndaten);
|
||||
};
|
||||
|
||||
#endif // MSGCOMPARES_H
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
#include <QDebug>
|
||||
#include <nglapplication/nglcoreapplication.h>
|
||||
|
||||
#include <QJsonDocument>
|
||||
#include <QtTest/QTest>
|
||||
#include <AdlerJson/telegrams.h>
|
||||
|
||||
#include "ex_anmeldung.h"
|
||||
#include "ex_abmeldung.h"
|
||||
#include "ex_anmeldebestaetigung.h"
|
||||
#include "ex_status.h"
|
||||
#include "ex_fq_wirkfeldplanung.h"
|
||||
#include "ex_fq_feuerbereit.h"
|
||||
#include "ex_fq_feuern.h"
|
||||
#include "ex_fq_abgefeuert.h"
|
||||
#include "ex_fq_vollzugsmeldung.h"
|
||||
#include "ex_erkundungsanfrage.h"
|
||||
#include "ex_erkundungsergebnisse.h"
|
||||
#include "ex_fq_feuerkampf.h"
|
||||
#include "ex_fh_feuerhalt.h"
|
||||
#include "ex_sq_stellungsmeldung_fs.h"
|
||||
#include "ex_sq_stellungsmeldung_ws.h"
|
||||
#include "ex_sq_stellungsmeldung_lp.h"
|
||||
#include "ex_sq_stellungswechsel.h"
|
||||
#include "ex_hq_koordinierungsmassnahmen.h"
|
||||
#include "ex_hq_fuehrungslinien.h"
|
||||
#include "ex_tq_technische_quittung.h"
|
||||
#include "ex_aq_freitext.h"
|
||||
#include "ex_mq_manuelle_quittung.h"
|
||||
#include "ex_flugbahnberechnung.h"
|
||||
#include "ex_flugbahndaten.h"
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
int status = 0;
|
||||
status |= QTest::qExec(new TestExAnmeldung, argc, argv);
|
||||
status |= QTest::qExec(new TestExAbmeldung, argc, argv);
|
||||
status |= QTest::qExec(new TestExAnmeldebestaetigung, argc, argv);
|
||||
status |= QTest::qExec(new TestExStatus, argc, argv);
|
||||
status |= QTest::qExec(new TestExFqWirkfeldplanung, argc, argv); // EX-FQ(BA-BB-FK) 1000 Wirkfeldplanung
|
||||
status |= QTest::qExec(new TestExMqManuelleQuittung, argc, argv); // EX-MQ 1001 Manuelle Quittung
|
||||
status |= QTest::qExec(new TestExFqFeuerbereit, argc, argv); // EX-FQ(FB) 1002 Feuerbereit
|
||||
status |= QTest::qExec(new TestExFqFeuern, argc, argv); // EX-FQ(FN) 1003 Feuern
|
||||
status |= QTest::qExec(new TestExFqAbgefeuert, argc, argv); // EX-FQ(AF) 1004 Abgefeuert
|
||||
status |= QTest::qExec(new TestExFqVollzugsmeldung, argc, argv); // EX-FQ(VM) 1005 Vollzugsmeldung
|
||||
// status |= QTest::qExec(new TestExFqErkundungsanfrage, argc, argv);
|
||||
status |= QTest::qExec(new TestExFqFeuerkampf, argc, argv);
|
||||
status |= QTest::qExec(new TestExFeuerhalt, argc, argv); // EX-FH 1006 Feuer HALT / Einstellen
|
||||
status |= QTest::qExec(new TestExStellungsmeldungFS, argc, argv); // EX-SQ(FS) 2000 Stellungsmeldung Feuerstellung
|
||||
status |= QTest::qExec(new TestExStellungsmeldungWS, argc, argv); // EX-SQ(WS) 2001 Stellungsmeldung Waffensystem
|
||||
status |= QTest::qExec(new TestExStellungsmeldungLP, argc, argv); // EX-SQ(LP) 2002 Stellungsmeldung Ladeplatz
|
||||
status |= QTest::qExec(new TestExErkundungsergebnisse, argc, argv); // EX-Erkundungsergebnisse 5000 Senden Erkundungsergebnisse
|
||||
status |= QTest::qExec(new TestExStellungswechsel, argc, argv);
|
||||
status |= QTest::qExec(new TestExHqKoordinierungsmassnahmen, argc, argv); // EX-HQ(K) 3000 Führungslinien (Koordinierungsmaßnahmen zur Feuerunterstützung)
|
||||
status |= QTest::qExec(new TestExHqFuehrungslinien, argc, argv); // EX-HQ(G) 3001 Führungslinien und Grenzen
|
||||
status |= QTest::qExec(new TestExTqTechnischeQuittung, argc, argv);
|
||||
status |= QTest::qExec(new TestExAqFreitextmeldung, argc, argv); // EX-AQ 5001 Freitextmeldung
|
||||
status |= QTest::qExec(new TestExFlugbahnberechnung, argc, argv); // EX-Flugbahnberechnung 4001
|
||||
status |= QTest::qExec(new TestExFlugbahndaten, argc, argv); // EX-Flugbahndaten 4002
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user