File indexing completed on 2024-06-09 04:58:54

0001 /*
0002    SPDX-FileCopyrightText: 2022-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "slackbridgewidgettest.h"
0008 #include "administratorsettingsdialog/slackbridge/slackbridgewidget.h"
0009 #include "settingswidgetshelper.h"
0010 #include <QCheckBox>
0011 #include <QLineEdit>
0012 #include <QPlainTextEdit>
0013 QTEST_MAIN(SlackBridgeWidgetTest)
0014 SlackBridgeWidgetTest::SlackBridgeWidgetTest(QObject *parent)
0015     : QObject{parent}
0016 {
0017 }
0018 
0019 void SlackBridgeWidgetTest::shouldHaveDefaultValues()
0020 {
0021     SlackBridgeWidget w(nullptr);
0022     auto mEnabled = w.findChild<QCheckBox *>(QStringLiteral("mEnabled"));
0023     QVERIFY(mEnabled);
0024     QVERIFY(!mEnabled->isChecked());
0025     QVERIFY(!mEnabled->text().isEmpty());
0026     QVERIFY(!mEnabled->toolTip().isEmpty());
0027     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mEnabled), QStringLiteral("SlackBridge_Enabled"));
0028 
0029     auto mFileUpload = w.findChild<QCheckBox *>(QStringLiteral("mFileUpload"));
0030     QVERIFY(mFileUpload);
0031     QVERIFY(!mFileUpload->isChecked());
0032     QVERIFY(!mFileUpload->text().isEmpty());
0033     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mFileUpload), QStringLiteral("SlackBridge_FileUpload_Enabled"));
0034 
0035     auto mSlackBridgeOutEnabled = w.findChild<QCheckBox *>(QStringLiteral("mSlackBridgeOutEnabled"));
0036     QVERIFY(mSlackBridgeOutEnabled);
0037     QVERIFY(!mSlackBridgeOutEnabled->isChecked());
0038     QVERIFY(!mSlackBridgeOutEnabled->text().isEmpty());
0039     QVERIFY(!mSlackBridgeOutEnabled->toolTip().isEmpty());
0040     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mSlackBridgeOutEnabled), QStringLiteral("SlackBridge_Out_Enabled"));
0041 
0042     auto mSlackBridgeOutAll = w.findChild<QCheckBox *>(QStringLiteral("mSlackBridgeOutAll"));
0043     QVERIFY(mSlackBridgeOutAll);
0044     QVERIFY(!mSlackBridgeOutAll->isChecked());
0045     QVERIFY(!mSlackBridgeOutAll->text().isEmpty());
0046     QVERIFY(!mSlackBridgeOutAll->toolTip().isEmpty());
0047     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mSlackBridgeOutAll), QStringLiteral("SlackBridge_Out_All"));
0048 
0049     auto mAliasFormat = w.findChild<QLineEdit *>(QStringLiteral("mAliasFormat"));
0050     QVERIFY(mAliasFormat);
0051     QVERIFY(mAliasFormat->text().isEmpty());
0052     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mAliasFormat), QStringLiteral("SlackBridge_AliasFormat"));
0053     SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("SlackBridge_AliasFormat"));
0054 
0055     auto mExcludeBots = w.findChild<QLineEdit *>(QStringLiteral("mExcludeBots"));
0056     QVERIFY(mExcludeBots);
0057     QVERIFY(mExcludeBots->text().isEmpty());
0058     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mExcludeBots), QStringLiteral("SlackBridge_ExcludeBotnames"));
0059     SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("SlackBridge_ExcludeBotnames"));
0060 
0061     auto mReactions = w.findChild<QCheckBox *>(QStringLiteral("mReactions"));
0062     QVERIFY(mReactions);
0063     QVERIFY(!mReactions->isChecked());
0064     QVERIFY(!mReactions->text().isEmpty());
0065     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mReactions), QStringLiteral("SlackBridge_Reactions_Enabled"));
0066 
0067     auto mAPITokens = w.findChild<QPlainTextEdit *>(QStringLiteral("mAPITokens"));
0068     QVERIFY(mAPITokens);
0069     QVERIFY(mAPITokens->toPlainText().isEmpty());
0070     QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mAPITokens), QStringLiteral("SlackBridge_APIToken"));
0071     SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("SlackBridge_APIToken"));
0072 }
0073 
0074 #include "moc_slackbridgewidgettest.cpp"