File indexing completed on 2024-06-09 04:59:04
0001 /* 0002 SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "channelpasswordwidgettest.h" 0008 #include "dialogs/channelpasswordwidget.h" 0009 #include <KPasswordLineEdit> 0010 #include <QHBoxLayout> 0011 #include <QLabel> 0012 #include <QSignalSpy> 0013 #include <QTest> 0014 QTEST_MAIN(ChannelPasswordWidgetTest) 0015 ChannelPasswordWidgetTest::ChannelPasswordWidgetTest(QObject *parent) 0016 : QObject(parent) 0017 { 0018 } 0019 0020 void ChannelPasswordWidgetTest::shouldHaveDefaultValues() 0021 { 0022 ChannelPasswordWidget w; 0023 auto mainLayout = w.findChild<QHBoxLayout *>(QStringLiteral("mainLayout")); 0024 QVERIFY(mainLayout); 0025 QCOMPARE(mainLayout->contentsMargins(), QMargins{}); 0026 0027 auto label = w.findChild<QLabel *>(QStringLiteral("label")); 0028 QVERIFY(label); 0029 QVERIFY(!label->text().isEmpty()); 0030 0031 auto mPasswordLineEdit = w.findChild<KPasswordLineEdit *>(QStringLiteral("mPasswordLineEdit")); 0032 QVERIFY(mPasswordLineEdit); 0033 0034 QVERIFY(w.password().isEmpty()); 0035 } 0036 0037 void ChannelPasswordWidgetTest::shouldEmitSignals() 0038 { 0039 ChannelPasswordWidget w; 0040 auto mPasswordLineEdit = w.findChild<KPasswordLineEdit *>(QStringLiteral("mPasswordLineEdit")); 0041 QSignalSpy spy(&w, &ChannelPasswordWidget::updateOkButton); 0042 mPasswordLineEdit->setPassword(QStringLiteral("bla")); 0043 QVERIFY(spy.count() > 0); 0044 QVERIFY(spy.at(0).at(0).toBool()); 0045 spy.clear(); 0046 mPasswordLineEdit->setPassword({}); 0047 QVERIFY(spy.count() > 0); 0048 QVERIFY(!spy.at(0).at(0).toBool()); 0049 } 0050 0051 #include "moc_channelpasswordwidgettest.cpp"