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 "mergecontactloseinformationwarningtest.h" 8 #include "../widgets/mergecontactloseinformationwarning.h" 9 #include <QAction> 10 #include <QSignalSpy> 11 #include <QTest> 12 #include <qtestmouse.h> 13 MergeContactLoseInformationWarningTest(QObject * parent)14MergeContactLoseInformationWarningTest::MergeContactLoseInformationWarningTest(QObject *parent) 15 : QObject(parent) 16 { 17 } 18 shouldHaveDefaultValue()19void MergeContactLoseInformationWarningTest::shouldHaveDefaultValue() 20 { 21 KABMergeContacts::MergeContactLoseInformationWarning w; 22 QVERIFY(!w.isCloseButtonVisible()); 23 QVERIFY(!w.isVisible()); 24 auto customize = w.findChild<QAction *>(QStringLiteral("customize")); 25 QVERIFY(customize); 26 auto automatic = w.findChild<QAction *>(QStringLiteral("automatic")); 27 QVERIFY(automatic); 28 } 29 shouldEmitSignals()30void MergeContactLoseInformationWarningTest::shouldEmitSignals() 31 { 32 KABMergeContacts::MergeContactLoseInformationWarning w; 33 w.show(); 34 QVERIFY(QTest::qWaitForWindowExposed(&w)); 35 QVERIFY(w.isVisible()); 36 auto customize = w.findChild<QAction *>(QStringLiteral("customize")); 37 auto automatic = w.findChild<QAction *>(QStringLiteral("automatic")); 38 QSignalSpy spy1(&w, &KABMergeContacts::MergeContactLoseInformationWarning::continueMerging); 39 QSignalSpy spy2(&w, &KABMergeContacts::MergeContactLoseInformationWarning::customizeMergingContacts); 40 customize->trigger(); 41 QCOMPARE(spy1.count(), 0); 42 QCOMPARE(spy2.count(), 1); 43 automatic->trigger(); 44 QCOMPARE(spy2.count(), 1); 45 QCOMPARE(spy1.count(), 1); 46 } 47 48 QTEST_MAIN(MergeContactLoseInformationWarningTest) 49