File indexing completed on 2024-05-12 16:25:26

0001 /*
0002    SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 #include "moderationinfotest.h"
0007 #include "moderation/moderationinfo.h"
0008 #include "ruqola_autotest_helper.h"
0009 
0010 QTEST_GUILESS_MAIN(ModerationInfoTest)
0011 ModerationInfoTest::ModerationInfoTest(QObject *parent)
0012     : QObject{parent}
0013 {
0014 }
0015 
0016 void ModerationInfoTest::shouldHaveDefaultValues()
0017 {
0018     ModerationInfo i;
0019     QVERIFY(i.userId().isEmpty());
0020     QVERIFY(i.name().isEmpty());
0021     QVERIFY(i.userName().isEmpty());
0022     QVERIFY(i.msgId().isEmpty());
0023     QCOMPARE(i.count(), 0);
0024     QVERIFY(!i.isUserDeleted());
0025     QVERIFY(i.message().isEmpty());
0026     QVERIFY(i.roomList().isEmpty());
0027 }
0028 
0029 void ModerationInfoTest::shouldModerationInfo()
0030 {
0031     QFETCH(QString, name);
0032     QFETCH(ModerationInfo, moderationInfo);
0033     const QString originalJsonFile = QLatin1String(RUQOLA_DATA_DIR) + QLatin1String("/moderation/") + name + QLatin1String(".json");
0034     const QJsonObject obj = AutoTestHelper::loadJsonObject(originalJsonFile);
0035 
0036     ModerationInfo result;
0037     result.parseModerationInfo(obj);
0038     const bool equal = result == moderationInfo;
0039     if (!equal) {
0040         qDebug() << " result " << result;
0041         qDebug() << " deviceInfo " << moderationInfo;
0042     }
0043     QVERIFY(equal);
0044 }
0045 
0046 void ModerationInfoTest::shouldModerationInfo_data()
0047 {
0048     QTest::addColumn<QString>("name");
0049     QTest::addColumn<ModerationInfo>("moderationInfo");
0050     QTest::addRow("moderationempty") << QStringLiteral("moderationempty") << ModerationInfo();
0051     {
0052         ModerationInfo info;
0053         info.setUserId(QStringLiteral("SSSSSQ4iShzD9T2"));
0054         info.setName(QStringLiteral("Name Laur"));
0055         info.setUserName(QStringLiteral("laurent"));
0056         info.setMsgId(QStringLiteral("XBHe3ocWiDApCc"));
0057         info.setCount(3);
0058         info.setIsUserDeleted(false);
0059         info.setMessage(QStringLiteral("H"));
0060         qint64 val = 1695363298494;
0061         info.setCreatedAt(val);
0062         QStringList list;
0063         list << QStringLiteral("test1") << QStringLiteral("test-team1");
0064         info.setRoomList(list);
0065         QTest::addRow("moderation1") << QStringLiteral("moderation1") << info;
0066     }
0067 }
0068 
0069 #include "moc_moderationinfotest.cpp"