1 /*
2    SPDX-FileCopyrightText: 2015-2021 Laurent Montel <montel@kde.org>
3 
4    SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 
7 #include "antivirusplugininterfacetest.h"
8 #include "../antivirusplugininterface.h"
9 #include <KActionCollection>
10 #include <QSignalSpy>
11 #include <QTest>
12 
AntiVirusPluginInterfaceTest(QObject * parent)13 AntiVirusPluginInterfaceTest::AntiVirusPluginInterfaceTest(QObject *parent)
14     : QObject(parent)
15 {
16 }
17 
~AntiVirusPluginInterfaceTest()18 AntiVirusPluginInterfaceTest::~AntiVirusPluginInterfaceTest()
19 {
20 }
21 
shouldHaveDefaultValue()22 void AntiVirusPluginInterfaceTest::shouldHaveDefaultValue()
23 {
24     AntiVirusPluginInterface interface;
25     QVERIFY(!interface.parentWidget());
26     QCOMPARE(interface.actionTypes().count(), 0);
27 }
28 
shouldCreateAction()29 void AntiVirusPluginInterfaceTest::shouldCreateAction()
30 {
31     AntiVirusPluginInterface interface;
32     interface.createAction(new KActionCollection(this));
33     QCOMPARE(interface.actionTypes().count(), 1);
34     QVERIFY(interface.actionTypes().at(0).action());
35 }
36 
shouldEmitActivatedSignal()37 void AntiVirusPluginInterfaceTest::shouldEmitActivatedSignal()
38 {
39     AntiVirusPluginInterface interface;
40     interface.createAction(new KActionCollection(this));
41 
42     QSignalSpy spy1(&interface, &PimCommon::AbstractGenericPluginInterface::emitPluginActivated);
43     interface.actionTypes().at(0).action()->trigger();
44     QCOMPARE(spy1.count(), 1);
45 }
46 
47 QTEST_MAIN(AntiVirusPluginInterfaceTest)
48