File indexing completed on 2025-02-23 05:24:03
0001 /* 0002 SPDX-FileCopyrightText: 2015-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 0006 */ 0007 0008 #include "kdebugsettingsdialogtest.h" 0009 #include "categorywarning.h" 0010 #include "kdebugsettingsdialog.h" 0011 #include "loadtoolbutton.h" 0012 #include "savetoolbutton.h" 0013 #include <QDialogButtonBox> 0014 #include <QPushButton> 0015 #include <QStandardPaths> 0016 #include <QTabWidget> 0017 #include <QTest> 0018 0019 KDebugSettingsDialogTest::KDebugSettingsDialogTest(QObject *parent) 0020 : QObject(parent) 0021 { 0022 QStandardPaths::setTestModeEnabled(true); 0023 } 0024 0025 KDebugSettingsDialogTest::~KDebugSettingsDialogTest() = default; 0026 0027 void KDebugSettingsDialogTest::shouldHaveDefaultValue() 0028 { 0029 KDebugSettingsDialog dlg; 0030 auto buttonBox = dlg.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox")); 0031 QVERIFY(buttonBox); 0032 QCOMPARE(buttonBox->standardButtons(), 0033 QDialogButtonBox::RestoreDefaults | QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Help | QDialogButtonBox::Apply); 0034 auto tab = dlg.findChild<QTabWidget *>(QStringLiteral("tabwidget")); 0035 QVERIFY(tab); 0036 for (int i = 0; i < tab->count(); ++i) { 0037 const QString objName = tab->widget(i)->objectName(); 0038 const bool hasCorrectName = (objName == QLatin1StringView("kdeapplicationsettingspage")) || (objName == QLatin1StringView("customsettingspage")) 0039 || (objName == QLatin1StringView("environmentsettingsrulespage")); 0040 QVERIFY(hasCorrectName); 0041 } 0042 auto saveAs = buttonBox->findChild<SaveToolButton *>(QStringLiteral("saveas_button")); 0043 QVERIFY(saveAs); 0044 auto load = buttonBox->findChild<LoadToolButton *>(QStringLiteral("load_button")); 0045 QVERIFY(load); 0046 QVERIFY(load->menu()); 0047 auto insertCategories = buttonBox->findChild<QPushButton *>(QStringLiteral("insert_button")); 0048 QVERIFY(insertCategories); 0049 auto categoryWarning = dlg.findChild<CategoryWarning *>(QStringLiteral("categorywarning")); 0050 QVERIFY(categoryWarning); 0051 QVERIFY(!categoryWarning->isVisible()); 0052 } 0053 0054 QTEST_MAIN(KDebugSettingsDialogTest) 0055 0056 #include "moc_kdebugsettingsdialogtest.cpp"