File indexing completed on 2024-05-26 05:05:32
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 "cassettingswidgettest.h" 0008 #include "administratorsettingsdialog/cas/cassettingswidget.h" 0009 #include "settingswidgetshelper.h" 0010 #include <QCheckBox> 0011 #include <QComboBox> 0012 #include <QFormLayout> 0013 #include <QLabel> 0014 #include <QLineEdit> 0015 QTEST_MAIN(CasSettingsWidgetTest) 0016 CasSettingsWidgetTest::CasSettingsWidgetTest(QObject *parent) 0017 : QObject{parent} 0018 { 0019 } 0020 0021 void CasSettingsWidgetTest::shouldHaveDefaultValues() 0022 { 0023 CasSettingsWidget w(nullptr); 0024 auto mEnabled = w.findChild<QCheckBox *>(QStringLiteral("mEnabled")); 0025 QVERIFY(mEnabled); 0026 QVERIFY(!mEnabled->isChecked()); 0027 QVERIFY(!mEnabled->text().isEmpty()); 0028 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mEnabled), QStringLiteral("CAS_enabled")); 0029 0030 auto mTrustCASUsername = w.findChild<QCheckBox *>(QStringLiteral("mTrustCASUsername")); 0031 QVERIFY(mTrustCASUsername); 0032 QVERIFY(!mTrustCASUsername->isChecked()); 0033 QVERIFY(!mTrustCASUsername->text().isEmpty()); 0034 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mTrustCASUsername), QStringLiteral("CAS_trust_username")); 0035 0036 auto mAllowUserCreation = w.findChild<QCheckBox *>(QStringLiteral("mAllowUserCreation")); 0037 QVERIFY(mAllowUserCreation); 0038 QVERIFY(!mAllowUserCreation->isChecked()); 0039 QVERIFY(!mAllowUserCreation->text().isEmpty()); 0040 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mAllowUserCreation), QStringLiteral("CAS_Creation_User_Enabled")); 0041 0042 auto mSSOBaseURL = w.findChild<QLineEdit *>(QStringLiteral("mSSOBaseURL")); 0043 QVERIFY(mSSOBaseURL); 0044 QVERIFY(mSSOBaseURL->text().isEmpty()); 0045 QVERIFY(!mSSOBaseURL->toolTip().isEmpty()); 0046 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mSSOBaseURL), QStringLiteral("CAS_base_url")); 0047 SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("CAS_base_url")); 0048 0049 auto mSSOLoginURL = w.findChild<QLineEdit *>(QStringLiteral("mSSOLoginURL")); 0050 QVERIFY(mSSOLoginURL); 0051 QVERIFY(mSSOLoginURL->text().isEmpty()); 0052 QVERIFY(!mSSOLoginURL->toolTip().isEmpty()); 0053 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mSSOLoginURL), QStringLiteral("CAS_login_url")); 0054 SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("CAS_login_url")); 0055 0056 auto attributeHandlingLabel = w.findChild<QLabel *>(QStringLiteral("attributeHandlingLabel")); 0057 QVERIFY(attributeHandlingLabel); 0058 QVERIFY(!attributeHandlingLabel->text().isEmpty()); 0059 0060 auto mCASVersion = w.findChild<QComboBox *>(QStringLiteral("mCASVersion")); 0061 QVERIFY(mCASVersion); 0062 QCOMPARE(mCASVersion->count(), 2); 0063 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mCASVersion), QStringLiteral("CAS_version")); 0064 0065 auto mAlwaysSyncUserData = w.findChild<QCheckBox *>(QStringLiteral("mAlwaysSyncUserData")); 0066 QVERIFY(mAlwaysSyncUserData); 0067 QVERIFY(!mAlwaysSyncUserData->isChecked()); 0068 QVERIFY(!mAlwaysSyncUserData->text().isEmpty()); 0069 QVERIFY(!mAlwaysSyncUserData->toolTip().isEmpty()); 0070 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mAlwaysSyncUserData), QStringLiteral("CAS_Sync_User_Data_Enabled")); 0071 0072 auto mAttributeMap = w.findChild<QLineEdit *>(QStringLiteral("mAttributeMap")); 0073 QVERIFY(mAttributeMap); 0074 QVERIFY(mAttributeMap->text().isEmpty()); 0075 QVERIFY(!mAttributeMap->toolTip().isEmpty()); 0076 QCOMPARE(SettingsWidgetHelper::widgetSettingsName(mAttributeMap), QStringLiteral("CAS_Sync_User_Data_FieldMap")); 0077 SettingsWidgetHelper::checkLabelToolButton(&w, QStringLiteral("CAS_Sync_User_Data_FieldMap")); 0078 } 0079 0080 #include "moc_cassettingswidgettest.cpp"