summarylogtreecommitdiffstats
path: root/0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch
diff options
context:
space:
mode:
Diffstat (limited to '0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch')
-rw-r--r--0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch140
1 files changed, 0 insertions, 140 deletions
diff --git a/0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch b/0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch
deleted file mode 100644
index 11fcac72cc72..000000000000
--- a/0001-Mock-setting-the-autostart-path-in-the-wizard-test.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-From 549be45b55e401d2d22a07c87c85ccc9d1e4bbd8 Mon Sep 17 00:00:00 2001
-From: Martchus <martchus@gmx.net>
-Date: Fri, 22 Dec 2023 17:33:21 +0100
-Subject: [PATCH] Mock setting the autostart path in the wizard test
-
-This test would keep the autostart disabled but override an existing
-autostart entry (see https://github.com/Martchus/syncthingtray/issues/221).
-With this change it will no longer override an existing entry. Reading and
-writing the autostart entry is now mocked and properly checked.
----
- syncthingwidgets/settings/settingsdialog.cpp | 7 ++++++
- syncthingwidgets/tests/wizard.cpp | 26 ++++++++++++++++++--
- 2 files changed, 31 insertions(+), 2 deletions(-)
-
-diff --git a/syncthingwidgets/settings/settingsdialog.cpp b/syncthingwidgets/settings/settingsdialog.cpp
-index bf3f778..c1ebdb0 100644
---- a/syncthingwidgets/settings/settingsdialog.cpp
-+++ b/syncthingwidgets/settings/settingsdialog.cpp
-@@ -818,6 +818,10 @@ QWidget *AutostartOptionPage::setupWidget()
- */
- std::optional<QString> configuredAutostartPath()
- {
-+ if (qEnvironmentVariableIsSet(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK")) {
-+ auto mockedPath = qEnvironmentVariable(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK");
-+ return mockedPath.isEmpty() ? std::nullopt : std::make_optional(mockedPath);
-+ }
- #if defined(PLATFORM_LINUX) && !defined(Q_OS_ANDROID)
- auto desktopFile = QFile(QStandardPaths::locate(QStandardPaths::ConfigLocation, QStringLiteral("autostart/" PROJECT_NAME ".desktop")));
- // check whether the file can be opened and whether it is enabled but prevent reading large files
-@@ -873,6 +877,9 @@ QString supposedAutostartPath()
- */
- bool setAutostartPath(const QString &path)
- {
-+ if (qEnvironmentVariableIsSet(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK")) {
-+ return qputenv(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK", path.toLocal8Bit());
-+ }
- #if defined(PLATFORM_LINUX) && !defined(Q_OS_ANDROID)
- const auto configPath = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
- if (configPath.isEmpty()) {
-diff --git a/syncthingwidgets/tests/wizard.cpp b/syncthingwidgets/tests/wizard.cpp
-index 8fc00d7..8e6eb09 100644
---- a/syncthingwidgets/tests/wizard.cpp
-+++ b/syncthingwidgets/tests/wizard.cpp
-@@ -6,9 +6,12 @@
- // use meta-data of syncthingtray application here
- #include "resources/../../tray/resources/config.h"
-
-+#include <qtutilities/misc/compat.h>
-+
- #include <QtTest/QtTest>
-
- #include <QApplication>
-+#include <QCheckBox>
- #include <QCommandLinkButton>
- #include <QDebug>
- #include <QEventLoop>
-@@ -148,6 +151,9 @@ void WizardTests::testShowingSettings()
- */
- void WizardTests::testConfiguringLauncher()
- {
-+ // mock the autostart path; it is supposed to be preserved
-+ QVERIFY(qputenv(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK", "fake-autostart-path"));
-+
- // pretend libsyncthing / systemd is already enabled
- // note: Should be unset as we're selecting to use an external binary.
- auto &settings = Settings::values();
-@@ -188,6 +194,9 @@ void WizardTests::testConfiguringLauncher()
- auto *const mainConfigPage = qobject_cast<MainConfigWizardPage *>(wizardDlg.currentPage());
- QVERIFY(mainConfigPage != nullptr);
- auto &setupDetection = wizardDlg.setupDetection();
-+ const auto &configuredAutostartPath = setupDetection.autostartConfiguredPath;
-+ QVERIFY(configuredAutostartPath.has_value());
-+ QCOMPARE(configuredAutostartPath.value(), QStringLiteral("fake-autostart-path"));
- QVERIFY(!setupDetection.hasConfig());
- // -> print debug output in certain launcher error cases to get the full picture if any of the subsequent checks fail
- if (setupDetection.launcherError.has_value()) {
-@@ -223,6 +232,10 @@ void WizardTests::testConfiguringLauncher()
- // keep autostart setting as-is
- auto *const autostartPage = qobject_cast<AutostartWizardPage *>(wizardDlg.currentPage());
- QVERIFY(autostartPage != nullptr);
-+ auto *const keepExistingCheckBox = autostartPage->findChild<QCheckBox *>(QStringLiteral("keepExistingCheckBox"));
-+ QVERIFY(keepExistingCheckBox != nullptr);
-+ QVERIFY(keepExistingCheckBox->isVisible());
-+ keepExistingCheckBox->setChecked(true);
- wizardDlg.next();
-
- // apply settings
-@@ -233,7 +246,7 @@ void WizardTests::testConfiguringLauncher()
- const auto summary = summaryTextBrowser->toPlainText();
- QVERIFY(summary.contains(QStringLiteral("Start Syncthing via Syncthing Tray's launcher")));
- QVERIFY(summary.contains(QStringLiteral("executable from PATH as separate process")));
-- QVERIFY(summary.contains(QStringLiteral("Keep autostart")));
-+ QVERIFY(summary.contains(QStringLiteral("Keep autostart disabled")) || summary.contains(QStringLiteral("Preserve existing autostart entry")));
- wizardDlg.next();
-
- // check results
-@@ -343,6 +356,7 @@ void WizardTests::testConfiguringLauncher()
- QVERIFY(!settings.connection.primary.syncthingUrl.isEmpty());
- QVERIFY(!settings.connection.primary.apiKey.isEmpty());
- QCOMPARE(settings.connection.secondary.size(), 0);
-+ QCOMPARE(qEnvironmentVariable(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK"), QStringLiteral("fake-autostart-path"));
- }
-
- /*!
-@@ -351,6 +365,9 @@ void WizardTests::testConfiguringLauncher()
- */
- void WizardTests::testConfiguringCurrentlyRunningSyncthing()
- {
-+ // mock the autostart path; it is supposed to be changed
-+ QVERIFY(qputenv(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK", "fake-autostart-path"));
-+
- // change port in config file
- auto wizardDlg = Wizard();
- auto &setupDetection = wizardDlg.setupDetection();
-@@ -427,9 +444,13 @@ void WizardTests::testConfiguringCurrentlyRunningSyncthing()
- QVERIFY(!cfgNoneRadioButton->isChecked());
- wizardDlg.next();
-
-- // keep autostart setting as-is
-+ // override existing autostart setting
- auto *const autostartPage = qobject_cast<AutostartWizardPage *>(wizardDlg.currentPage());
- QVERIFY(autostartPage != nullptr);
-+ auto *const keepExistingCheckBox = autostartPage->findChild<QCheckBox *>(QStringLiteral("keepExistingCheckBox"));
-+ QVERIFY(keepExistingCheckBox != nullptr);
-+ QVERIFY(keepExistingCheckBox->isVisible());
-+ keepExistingCheckBox->setChecked(false);
- wizardDlg.next();
- configureSyncthingArgs(setupDetection);
-
-@@ -483,6 +504,7 @@ void WizardTests::testConfiguringCurrentlyRunningSyncthing()
- QVERIFY(!settings.connection.primary.apiKey.isEmpty());
- QCOMPARE(settings.connection.secondary.size(), 1);
- QCOMPARE(settings.connection.secondary[0].label, QStringLiteral("Backup of testconfig (created by wizard)"));
-+ QCOMPARE(qEnvironmentVariable(PROJECT_VARNAME_UPPER "_AUTOSTART_PATH_MOCK"), setupDetection.autostartSupposedPath);
- }
-
- bool WizardTests::confirmMessageBox()
---
-2.43.0
-