Add more test/autotests + fix layout

wilder
Montel Laurent 10 years ago
parent b155037ad3
commit d46b38a1d1
  1. 54
      src/filter/autotests/filteractionmissingtemplatedialogtest.cpp
  2. 35
      src/filter/autotests/filteractionmissingtemplatedialogtest.h
  3. 26
      src/filter/dialog/filteractionmissingtemplatedialog.cpp
  4. 32
      src/filter/tests/filteractionmissingtemplatedialoggui.cpp

@ -0,0 +1,54 @@
/*
Copyright (C) 2016 Laurent Montel <montel@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#include "filteractionmissingtemplatedialogtest.h"
#include "../filter/dialog/filteractionmissingtemplatedialog.h"
#include <KComboBox>
#include <QDialogButtonBox>
#include <QLabel>
#include <QTest>
FilterActionMissingTemplateDialogTest::FilterActionMissingTemplateDialogTest(QObject *parent)
: QObject(parent)
{
}
FilterActionMissingTemplateDialogTest::~FilterActionMissingTemplateDialogTest()
{
}
void FilterActionMissingTemplateDialogTest::shouldHaveDefaultValue()
{
MailCommon::FilterActionMissingTemplateDialog dlg(QStringList(), QStringLiteral("filename"));
QVERIFY(!dlg.windowTitle().isEmpty());
QDialogButtonBox *buttonBox = dlg.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
QVERIFY(buttonBox);
QLabel *label = dlg.findChild<QLabel *>(QStringLiteral("label"));
QVERIFY(label);
QVERIFY(!label->text().isEmpty());
KComboBox *mComboBoxTemplate = dlg.findChild<KComboBox *>(QStringLiteral("comboboxtemplate"));
QVERIFY(mComboBoxTemplate);
}
QTEST_MAIN(FilterActionMissingTemplateDialogTest)

@ -0,0 +1,35 @@
/*
Copyright (C) 2016 Laurent Montel <montel@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#ifndef FILTERACTIONMISSINGTEMPLATEDIALOGTEST_H
#define FILTERACTIONMISSINGTEMPLATEDIALOGTEST_H
#include <QObject>
class FilterActionMissingTemplateDialogTest : public QObject
{
Q_OBJECT
public:
explicit FilterActionMissingTemplateDialogTest(QObject *parent = Q_NULLPTR);
~FilterActionMissingTemplateDialogTest();
private Q_SLOTS:
void shouldHaveDefaultValue();
};
#endif // FILTERACTIONMISSINGTEMPLATEDIALOGTEST_H

@ -39,10 +39,22 @@ FilterActionMissingTemplateDialog::FilterActionMissingTemplateDialog(
setModal(true);
setWindowTitle(i18n("Select Template"));
QVBoxLayout *mainLayout = new QVBoxLayout(this);
QWidget *mainWidget = new QWidget(this);
mainLayout->addWidget(mainWidget);
QLabel *label = new QLabel(this);
label->setObjectName(QStringLiteral("label"));
label->setText(i18n("Filter template is missing. "
"Please select a template to use with filter \"%1\"",
filtername));
label->setWordWrap(true);
mainLayout->addWidget(label);
mComboBoxTemplate = new KComboBox(this);
mComboBoxTemplate->setObjectName(QStringLiteral("comboboxtemplate"));
mComboBoxTemplate->addItems(templateList);
mainLayout->addWidget(mComboBoxTemplate);
QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this);
buttonBox->setObjectName(QStringLiteral("buttonbox"));
QPushButton *okButton = buttonBox->button(QDialogButtonBox::Ok);
okButton->setDefault(true);
okButton->setShortcut(Qt::CTRL | Qt::Key_Return);
@ -50,16 +62,6 @@ FilterActionMissingTemplateDialog::FilterActionMissingTemplateDialog(
connect(buttonBox, &QDialogButtonBox::rejected, this, &FilterActionMissingTemplateDialog::reject);
mainLayout->addWidget(buttonBox);
okButton->setDefault(true);
QVBoxLayout *lay = new QVBoxLayout(mainWidget);
QLabel *label = new QLabel(this);
label->setText(i18n("Filter template is missing. "
"Please select a template to use with filter \"%1\"",
filtername));
label->setWordWrap(true);
lay->addWidget(label);
mComboBoxTemplate = new KComboBox(this);
mComboBoxTemplate->addItems(templateList);
lay->addWidget(mComboBoxTemplate);
readConfig();
}

@ -0,0 +1,32 @@
/*
Copyright (C) 2016 Laurent Montel <montel@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#include <QApplication>
#include "../filter/dialog/filteractionmissingtemplatedialog.h"
int main(int argc, char **argv)
{
QApplication app(argc, argv);
MailCommon::FilterActionMissingTemplateDialog *w = new MailCommon::FilterActionMissingTemplateDialog(QStringList(), QStringLiteral("argument"));
w->exec();
app.exec();
delete w;
return 0;
}
Loading…
Cancel
Save