From 0b06fec6ba5d2999e61d3ec5f142b657f1795805 Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Mon, 4 Nov 2024 11:59:37 +0100 Subject: [PATCH] ClearCase: Fix tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Partially reverts 1ccaafb93ead38026b0ef2c0136b448c149ef17e and moves the signal to its only user. Change-Id: Ieb5c0d5ecc965d9a0a49f7938198f2c8f89b7009 Reviewed-by: Orgad Shaneh Reviewed-by: André Hartmann --- src/plugins/clearcase/clearcaseplugin.cpp | 26 +++++++++++++++++++---- src/plugins/vcsbase/vcsbaseplugin.cpp | 3 --- src/plugins/vcsbase/vcsbaseplugin.h | 5 ----- 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp index 0fb727e7885..cd9ec09482a 100644 --- a/src/plugins/clearcase/clearcaseplugin.cpp +++ b/src/plugins/clearcase/clearcaseplugin.cpp @@ -195,6 +195,11 @@ public: bool newActivity(); void updateStreamAndView(); +#ifdef WITH_TESTS +signals: + void reindexedDynamicFile(); + void statusActionsUpdated(); +#endif protected: void updateActions(VcsBase::VersionControlBase::ActionState) override; bool activateCommit() override; @@ -848,8 +853,12 @@ void ClearCasePluginPrivate::checkAndReIndexUnknownFile(const FilePath &file) if (isDynamic()) { // reindex unknown files if (m_statusMap->value(file.path(), FileStatus(FileStatus::Unknown)).status - == FileStatus::Unknown) + == FileStatus::Unknown) { updateStatusForFile(file); +#ifdef WITH_TESTS + emit reindexedDynamicFile(); +#endif + } } } @@ -925,6 +934,10 @@ void ClearCasePluginPrivate::updateStatusActions() m_checkInActivityAction->setEnabled(m_viewData.isUcm); m_diffActivityAction->setEnabled(m_viewData.isUcm); + +#ifdef WITH_TESTS + emit statusActionsUpdated(); +#endif } void ClearCasePluginPrivate::updateActions(VersionControlBase::ActionState as) @@ -2674,12 +2687,13 @@ void ClearCaseTest::testStatusActions() QFETCH(int, status); auto tempStatus = static_cast(status); - QSignalSpy spy(dd, &VcsBase::VersionControlBase::slotStateChangedDone); + QSignalSpy spy(dd, &ClearCasePluginPrivate::statusActionsUpdated); // special case: file should appear as "Unknown" since there is no entry in the index // and we don't want to explicitly set the status for this test case - if (tempStatus != FileStatus::Unknown) + if (tempStatus != FileStatus::Unknown) { dd->setStatus(fileName, tempStatus, true); - QVERIFY(spy.wait(1000)); + QVERIFY(spy.wait(1000)); + } QFETCH(bool, checkOutAction); QFETCH(bool, undoCheckOutAction); @@ -2702,6 +2716,7 @@ void ClearCaseTest::testVcsStatusDynamicReadonlyNotManaged() { // File is not in map, and is read-only ClearCasePluginPrivate::instance(); + QSignalSpy spy(dd, &ClearCasePluginPrivate::reindexedDynamicFile); dd->m_statusMap = std::shared_ptr(new StatusMap); const auto fileName = FilePath::currentWorkingPath().pathAppended( @@ -2715,6 +2730,7 @@ void ClearCaseTest::testVcsStatusDynamicReadonlyNotManaged() dd->m_viewData = testCase.dummyViewData(); dd->m_viewData.isDynamic = true; + QVERIFY(spy.wait(1500)); QCOMPARE(dd->vcsStatus(fileName).status, FileStatus::NotManaged); } @@ -2722,6 +2738,7 @@ void ClearCaseTest::testVcsStatusDynamicReadonlyNotManaged() void ClearCaseTest::testVcsStatusDynamicNotManaged() { ClearCasePluginPrivate::instance(); + QSignalSpy spy(dd, &ClearCasePluginPrivate::reindexedDynamicFile); dd->m_statusMap = std::shared_ptr(new StatusMap); const auto fileName = FilePath::currentWorkingPath().pathAppended("notmanaged_file.cpp"); @@ -2732,6 +2749,7 @@ void ClearCaseTest::testVcsStatusDynamicNotManaged() dd->m_viewData = testCase.dummyViewData(); dd->m_viewData.isDynamic = true; + QVERIFY(spy.wait(1500)); QCOMPARE(dd->vcsStatus(fileName).status, FileStatus::NotManaged); } #endif diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp index 9f2683f93dd..631eb0f248f 100644 --- a/src/plugins/vcsbase/vcsbaseplugin.cpp +++ b/src/plugins/vcsbase/vcsbaseplugin.cpp @@ -552,9 +552,6 @@ void VersionControlBase::slotStateChanged(const Internal::State &newInternalStat } ICore::removeAdditionalContext(m_context); } -#ifdef WITH_TESTS - emit slotStateChangedDone(); -#endif } const VcsBasePluginState &VersionControlBase::currentState() const diff --git a/src/plugins/vcsbase/vcsbaseplugin.h b/src/plugins/vcsbase/vcsbaseplugin.h index b6df305c8d2..b1c9abf32a8 100644 --- a/src/plugins/vcsbase/vcsbaseplugin.h +++ b/src/plugins/vcsbase/vcsbaseplugin.h @@ -176,11 +176,6 @@ protected: // Returns whether actions should be set up further. bool enableMenuAction(ActionState as, QAction *in) const; -#if WITH_TESTS -signals: - void slotStateChangedDone(); -#endif - private: void slotStateChanged(const Internal::State &s, Core::IVersionControl *vc);