File indexing completed on 2025-05-04 04:51:07

0001 /*
0002    SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "viewerpluginexternaleditwidgettest.h"
0008 #include "../configuredialog/viewerpluginexternaleditwidget.h"
0009 #include <KUrlRequester>
0010 #include <QFormLayout>
0011 #include <QLabel>
0012 #include <QLineEdit>
0013 #include <QTest>
0014 
0015 ViewerPluginExternalEditWidgetTest::ViewerPluginExternalEditWidgetTest(QObject *parent)
0016     : QObject(parent)
0017 {
0018 }
0019 
0020 ViewerPluginExternalEditWidgetTest::~ViewerPluginExternalEditWidgetTest() = default;
0021 
0022 void ViewerPluginExternalEditWidgetTest::shouldHaveDefaultValue()
0023 {
0024     ViewerPluginExternalEditWidget w;
0025     auto mainLayout = w.findChild<QFormLayout *>(QStringLiteral("mainlayout"));
0026     QVERIFY(mainLayout);
0027     QCOMPARE(mainLayout->contentsMargins(), QMargins());
0028 
0029     auto mName = w.findChild<QLineEdit *>(QStringLiteral("name"));
0030     QVERIFY(mName);
0031 
0032     auto mDescription = w.findChild<QLineEdit *>(QStringLiteral("description"));
0033     QVERIFY(mDescription);
0034 
0035     auto mCommandLine = w.findChild<QLineEdit *>(QStringLiteral("commandline"));
0036     QVERIFY(mCommandLine);
0037 
0038     auto mExecutable = w.findChild<KUrlRequester *>(QStringLiteral("mEditorRequester"));
0039     QVERIFY(mExecutable);
0040 
0041     auto formatHelp = w.findChild<QLabel *>(QStringLiteral("formatHelp"));
0042     QVERIFY(formatHelp);
0043 }
0044 
0045 void ViewerPluginExternalEditWidgetTest::shouldGetSaveInfo_data()
0046 {
0047     QTest::addColumn<ViewerPluginExternalScriptInfo>("scriptinfo");
0048     ViewerPluginExternalScriptInfo info;
0049     info.setCommandLine(QStringLiteral("foo"));
0050     info.setDescription(QStringLiteral("blo"));
0051     info.setExecutable(QStringLiteral("voo"));
0052     info.setName(QStringLiteral("bla"));
0053     QTest::newRow("test1") << info;
0054 
0055     info.setIsReadOnly(true);
0056     QTest::newRow("test2") << info;
0057 
0058     info.setFileName(QStringLiteral("lili"));
0059     QTest::newRow("test3") << info;
0060 }
0061 
0062 void ViewerPluginExternalEditWidgetTest::shouldGetSaveInfo()
0063 {
0064     QFETCH(ViewerPluginExternalScriptInfo, scriptinfo);
0065     ViewerPluginExternalEditWidget w;
0066     w.setScriptInfo(scriptinfo);
0067     QCOMPARE(scriptinfo, w.scriptInfo());
0068 }
0069 
0070 QTEST_MAIN(ViewerPluginExternalEditWidgetTest)
0071 
0072 #include "moc_viewerpluginexternaleditwidgettest.cpp"