File indexing completed on 2025-03-09 04:54:37

0001 /*
0002   SPDX-FileCopyrightText: 2014-2024 Laurent Montel <montel@kde.org>
0003 
0004   SPDX-License-Identifier: LGPL-2.0-or-later
0005 
0006 */
0007 #include "scamattributetest.h"
0008 #include "../scamattribute.h"
0009 #include <QTest>
0010 ScamAttributeTest::ScamAttributeTest(QObject *parent)
0011     : QObject(parent)
0012 {
0013 }
0014 
0015 ScamAttributeTest::~ScamAttributeTest() = default;
0016 
0017 void ScamAttributeTest::shouldHaveDefaultValue()
0018 {
0019     MessageViewer::ScamAttribute attr;
0020     QVERIFY(!attr.isAScam());
0021 }
0022 
0023 void ScamAttributeTest::shouldAffectValue()
0024 {
0025     MessageViewer::ScamAttribute attr;
0026     bool isScam = false;
0027     attr.setIsAScam(isScam);
0028     QCOMPARE(attr.isAScam(), isScam);
0029     isScam = true;
0030     attr.setIsAScam(isScam);
0031     QCOMPARE(attr.isAScam(), isScam);
0032 }
0033 
0034 void ScamAttributeTest::shouldDeserializeValue()
0035 {
0036     MessageViewer::ScamAttribute attr;
0037     const bool isScam = true;
0038     attr.setIsAScam(isScam);
0039     const QByteArray ba = attr.serialized();
0040     MessageViewer::ScamAttribute result;
0041     result.deserialize(ba);
0042     QVERIFY(result == attr);
0043 }
0044 
0045 void ScamAttributeTest::shouldCloneAttribute()
0046 {
0047     MessageViewer::ScamAttribute attr;
0048     const bool isScam = true;
0049     attr.setIsAScam(isScam);
0050     MessageViewer::ScamAttribute *cloneAttr = attr.clone();
0051     QCOMPARE(attr.isAScam(), cloneAttr->isAScam());
0052     delete cloneAttr;
0053 }
0054 
0055 void ScamAttributeTest::shouldHaveType()
0056 {
0057     MessageViewer::ScamAttribute attr;
0058     QCOMPARE(attr.type(), QByteArray("ScamAttribute"));
0059 }
0060 
0061 QTEST_MAIN(ScamAttributeTest)
0062 
0063 #include "moc_scamattributetest.cpp"