2017-12-20 14:54:05 +01:00
|
|
|
/*!
|
2019-05-22 10:08:38 +02:00
|
|
|
* \copyright Copyright (c) 2017-2019 Governikus GmbH & Co. KG, Germany
|
2017-12-20 14:54:05 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
#include "RemoteDeviceDescriptor.h"
|
|
|
|
|
|
|
|
#include "messages/Discovery.h"
|
|
|
|
|
2019-09-30 17:22:19 +02:00
|
|
|
#include <QtTest>
|
2017-12-20 14:54:05 +01:00
|
|
|
|
|
|
|
|
|
|
|
using namespace governikus;
|
|
|
|
|
|
|
|
|
|
|
|
class test_RemoteDeviceDescriptor
|
|
|
|
: public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
private:
|
|
|
|
quint16 mPort;
|
|
|
|
|
|
|
|
private Q_SLOTS:
|
|
|
|
void initTestCase()
|
|
|
|
{
|
|
|
|
mPort = 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void testValidDescriptorIsEqualToItself()
|
|
|
|
{
|
2019-01-03 15:06:22 +01:00
|
|
|
const Discovery validMsg(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0});
|
2017-12-20 14:54:05 +01:00
|
|
|
const QHostAddress address(QHostAddress::LocalHost);
|
|
|
|
const RemoteDeviceDescriptor valid(validMsg, address);
|
|
|
|
|
|
|
|
QVERIFY(valid == valid);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void testDistinctInvalidDescriptorsAreEqual()
|
|
|
|
{
|
|
|
|
const QHostAddress address1(QStringLiteral("192.168.1.1"));
|
|
|
|
const QHostAddress address2(QHostAddress::LocalHost);
|
|
|
|
|
2019-01-03 15:06:22 +01:00
|
|
|
const RemoteDeviceDescriptor invalid1(Discovery(QJsonObject()), address1);
|
|
|
|
const RemoteDeviceDescriptor invalid2(Discovery(QJsonObject()), address2);
|
2017-12-20 14:54:05 +01:00
|
|
|
|
|
|
|
QVERIFY(invalid1 == invalid2);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void testValidDescriptorIsDifferentFromInvalid()
|
|
|
|
{
|
2019-01-03 15:06:22 +01:00
|
|
|
const Discovery validMsg(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0});
|
|
|
|
const Discovery invalidMsg("", "", 0, {});
|
2017-12-20 14:54:05 +01:00
|
|
|
const QHostAddress address(QHostAddress::LocalHost);
|
|
|
|
|
|
|
|
const RemoteDeviceDescriptor valid(validMsg, address);
|
|
|
|
const RemoteDeviceDescriptor invalid(invalidMsg, address);
|
|
|
|
|
|
|
|
QVERIFY(!(valid == invalid));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void testDistinctValidDescriptorsWithDifferentDataAreDifferent()
|
|
|
|
{
|
2019-01-03 15:06:22 +01:00
|
|
|
const Discovery validMsg1(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0});
|
|
|
|
const Discovery validMsg2(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0, IfdVersion::Version::v_test});
|
2017-12-20 14:54:05 +01:00
|
|
|
const QHostAddress address(QHostAddress::LocalHost);
|
|
|
|
|
|
|
|
const RemoteDeviceDescriptor valid1(validMsg1, address);
|
|
|
|
const RemoteDeviceDescriptor valid2(validMsg2, address);
|
|
|
|
|
|
|
|
QVERIFY(!(valid1 == valid2));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void testDistinctValidDescriptorsWithTheSameDataAreEqual()
|
|
|
|
{
|
2019-01-03 15:06:22 +01:00
|
|
|
const Discovery validMsg1(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0});
|
|
|
|
const Discovery validMsg2(QStringLiteral("Device"), QStringLiteral("0123456789ABCDEF"), mPort, {IfdVersion::Version::v0});
|
2017-12-20 14:54:05 +01:00
|
|
|
const QHostAddress address(QHostAddress::LocalHost);
|
|
|
|
|
|
|
|
const RemoteDeviceDescriptor valid1(validMsg1, address);
|
|
|
|
const RemoteDeviceDescriptor valid2(validMsg2, address);
|
|
|
|
|
|
|
|
QVERIFY(valid1 == valid2);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
QTEST_GUILESS_MAIN(test_RemoteDeviceDescriptor)
|
|
|
|
#include "test_RemoteDeviceDescriptor.moc"
|