File indexing completed on 2024-04-28 15:31:53

0001 /*
0002     SPDX-FileCopyrightText: 2014 Laurent Montel <montel@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "kpagedialogautotest.h"
0008 #include <kpagedialog.h>
0009 
0010 #include <QDialogButtonBox>
0011 #include <QPushButton>
0012 #include <QTest>
0013 
0014 QTEST_MAIN(KPageDialogAutoTest)
0015 
0016 KPageDialogAutoTest::KPageDialogAutoTest()
0017 {
0018 }
0019 
0020 void KPageDialogAutoTest::shouldHaveDefaultValuesOnCreation()
0021 {
0022     KPageDialog page;
0023     QDialogButtonBox *dialogbuttonbox = page.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
0024     QVERIFY(dialogbuttonbox);
0025     QDialogButtonBox::StandardButtons standardButton = dialogbuttonbox->standardButtons();
0026     QDialogButtonBox::StandardButtons defaultButton = QDialogButtonBox::Ok | QDialogButtonBox::Cancel;
0027     QCOMPARE(standardButton, defaultButton);
0028 }
0029 
0030 void KPageDialogAutoTest::shouldAddAnActionButton()
0031 {
0032     KPageDialog page;
0033     QDialogButtonBox *dialogbuttonbox = page.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
0034     QPushButton *actionButton = new QPushButton(QStringLiteral("Action1"));
0035     page.addActionButton(actionButton);
0036     QCOMPARE(dialogbuttonbox->buttons().count(), 3);
0037     QVERIFY(dialogbuttonbox->buttons().contains(actionButton));
0038 }
0039 
0040 void KPageDialogAutoTest::shouldAddTwoActionButton()
0041 {
0042     KPageDialog page;
0043     QDialogButtonBox *dialogbuttonbox = page.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
0044     QPushButton *actionButton = new QPushButton(QStringLiteral("Action1"));
0045     page.addActionButton(actionButton);
0046 
0047     QPushButton *actionButton2 = new QPushButton(QStringLiteral("Action2"));
0048     page.addActionButton(actionButton2);
0049 
0050     QCOMPARE(dialogbuttonbox->buttons().count(), 4);
0051 }
0052 
0053 void KPageDialogAutoTest::shouldNotAddTwoSameActionButton()
0054 {
0055     KPageDialog page;
0056     QDialogButtonBox *dialogbuttonbox = page.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
0057     QPushButton *actionButton = new QPushButton(QStringLiteral("Action1"));
0058     page.addActionButton(actionButton);
0059 
0060     page.addActionButton(actionButton);
0061     QCOMPARE(dialogbuttonbox->buttons().count(), 3);
0062 }
0063 
0064 #include "moc_kpagedialogautotest.cpp"