From 8aa78b119a93c28fd7c1cef3a1c1da186582ebcb Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 17 Nov 2023 12:59:54 +0100 Subject: [PATCH] Fossil: Move plugin class definition to .cpp And split out the tests into a separate class. Change-Id: I908c4cec5d6a69850867cf2e51c050c8dd356a26 Reviewed-by: Orgad Shaneh --- src/plugins/fossil/CMakeLists.txt | 2 +- src/plugins/fossil/fossil.qbs | 2 +- src/plugins/fossil/fossilplugin.cpp | 67 ++++++++++++------- src/plugins/fossil/fossilplugin.h | 30 --------- .../fossil/wizard/fossiljsextension.cpp | 1 - 5 files changed, 44 insertions(+), 58 deletions(-) delete mode 100644 src/plugins/fossil/fossilplugin.h diff --git a/src/plugins/fossil/CMakeLists.txt b/src/plugins/fossil/CMakeLists.txt index 07485229450..11aac0bc633 100644 --- a/src/plugins/fossil/CMakeLists.txt +++ b/src/plugins/fossil/CMakeLists.txt @@ -11,7 +11,7 @@ add_qtc_plugin(Fossil fossilclient.cpp fossilclient.h fossilcommitwidget.cpp fossilcommitwidget.h fossileditor.cpp fossileditor.h - fossilplugin.cpp fossilplugin.h + fossilplugin.cpp fossilsettings.cpp fossilsettings.h fossiltr.h pullorpushdialog.cpp pullorpushdialog.h diff --git a/src/plugins/fossil/fossil.qbs b/src/plugins/fossil/fossil.qbs index e29b89dd34f..058032fce5f 100644 --- a/src/plugins/fossil/fossil.qbs +++ b/src/plugins/fossil/fossil.qbs @@ -21,7 +21,7 @@ QtcPlugin { "fossilclient.cpp", "fossilclient.h", "fossilcommitwidget.cpp", "fossilcommitwidget.h", "fossileditor.cpp", "fossileditor.h", - "fossilplugin.cpp", "fossilplugin.h", + "fossilplugin.cpp", "fossilsettings.cpp", "fossilsettings.h", "fossiltr.h", "pullorpushdialog.cpp", "pullorpushdialog.h", diff --git a/src/plugins/fossil/fossilplugin.cpp b/src/plugins/fossil/fossilplugin.cpp index d0a8dcc5301..d598c5c3239 100644 --- a/src/plugins/fossil/fossilplugin.cpp +++ b/src/plugins/fossil/fossilplugin.cpp @@ -1,8 +1,6 @@ // Copyright (c) 2018 Artur Shepilko // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 -#include "fossilplugin.h" - #include "commiteditor.h" #include "configuredialog.h" #include "constants.h" @@ -39,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -244,26 +243,6 @@ private: QLineEdit *m_revisionLineEdit = nullptr; }; -FossilPlugin::~FossilPlugin() -{ - delete dd; - dd = nullptr; -} - -bool FossilPlugin::initialize(const QStringList &arguments, QString *errorMessage) -{ - Q_UNUSED(arguments); - Q_UNUSED(errorMessage); - - dd = new FossilPluginPrivate; - - return true; -} - -void FossilPlugin::extensionsInitialized() -{ - dd->extensionsInitialized(); -} FossilPluginPrivate::FossilPluginPrivate() : VcsBasePluginPrivate(Context(Constants::FOSSIL_CONTEXT)) @@ -1087,7 +1066,17 @@ RevertDialog::RevertDialog(const QString &title, QWidget *parent) #ifdef WITH_TESTS -void FossilPlugin::testDiffFileResolving_data() +class FossilTests final : public QObject +{ + Q_OBJECT + +private slots: + void testDiffFileResolving_data(); + void testDiffFileResolving(); + void testLogResolving(); +}; + +void FossilTests::testDiffFileResolving_data() { QTest::addColumn("header"); QTest::addColumn("fileName"); @@ -1120,12 +1109,12 @@ void FossilPlugin::testDiffFileResolving_data() << QByteArray("src/plugins/fossil/fossilclient.cpp"); } -void FossilPlugin::testDiffFileResolving() +void FossilTests::testDiffFileResolving() { VcsBaseEditorWidget::testDiffFileResolving(dd->diffFactory); } -void FossilPlugin::testLogResolving() +void FossilTests::testLogResolving() { QByteArray data( "=== 2014-03-08 ===\n" @@ -1139,4 +1128,32 @@ void FossilPlugin::testLogResolving() } #endif +class FossilPlugin final : public ExtensionSystem::IPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Fossil.json") + + ~FossilPlugin() final + { + delete dd; + dd = nullptr; + } + + void initialize() final + { + dd = new FossilPluginPrivate; + +#ifdef WITH_TESTS + addTest(); +#endif + } + + void extensionsInitialized() final + { + dd->extensionsInitialized(); + } +}; + } // namespace Fossil::Internal + +#include "fossilplugin.moc" diff --git a/src/plugins/fossil/fossilplugin.h b/src/plugins/fossil/fossilplugin.h deleted file mode 100644 index c9fafc3cafa..00000000000 --- a/src/plugins/fossil/fossilplugin.h +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) 2018 Artur Shepilko -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#pragma once - -#include - -namespace Fossil { -namespace Internal { - -class FossilPlugin final : public ExtensionSystem::IPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Fossil.json") - - ~FossilPlugin() final; - - bool initialize(const QStringList &arguments, QString *errorMessage) final; - void extensionsInitialized() final; - -#ifdef WITH_TESTS -private slots: - void testDiffFileResolving_data(); - void testDiffFileResolving(); - void testLogResolving(); -#endif -}; - -} // namespace Internal -} // namespace Fossil diff --git a/src/plugins/fossil/wizard/fossiljsextension.cpp b/src/plugins/fossil/wizard/fossiljsextension.cpp index aaf5d172b67..44c11f024a1 100644 --- a/src/plugins/fossil/wizard/fossiljsextension.cpp +++ b/src/plugins/fossil/wizard/fossiljsextension.cpp @@ -4,7 +4,6 @@ #include "fossiljsextension.h" #include "../constants.h" #include "../fossilclient.h" -#include "../fossilplugin.h" #include #include