From bef44699a3feb22c4f478d050fab476fe84f6f11 Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Tue, 3 Jan 2023 14:06:25 +0100 Subject: [PATCH] Squish: Integrate query handling into common state handling Change-Id: I5c4bef992292d2195b557a61b9a648a39843ae2b Reviewed-by: David Schulz --- src/plugins/squish/squishtools.cpp | 53 ++++++------------------------ src/plugins/squish/squishtools.h | 1 - 2 files changed, 10 insertions(+), 44 deletions(-) diff --git a/src/plugins/squish/squishtools.cpp b/src/plugins/squish/squishtools.cpp index c6970abfbff..b7b14c10852 100644 --- a/src/plugins/squish/squishtools.cpp +++ b/src/plugins/squish/squishtools.cpp @@ -353,17 +353,14 @@ void SquishTools::setState(SquishTools::State state) // TODO check whether state transition is legal m_state = state; - if (m_request == RunnerQueryRequested || m_request == KillOldBeforeQueryRunner) { - handleSetStateQueryRunner(); - return; - } - switch (m_state) { case Idle: setIdle(); break; case ServerStarted: - if (m_request == RunTestRequested || m_request == RecordTestRequested) { + if (m_request == RunnerQueryRequested) { + executeRunnerQuery(); + } else if (m_request == RunTestRequested || m_request == RecordTestRequested) { startSquishRunner(); } else if (m_request == ServerConfigChangeRequested) { // nothing to do here } else { @@ -403,6 +400,8 @@ void SquishTools::setState(SquishTools::State state) if (toolsSettings.minimizeIDE) restoreQtCreatorWindows(); m_perspective.destroyControlBar(); + } else if (m_request == KillOldBeforeQueryRunner) { + startSquishServer(RunnerQueryRequested); } else if (m_request == KillOldBeforeRunRunner) { startSquishServer(RunTestRequested); } else if (m_request == KillOldBeforeRecordRunner) { @@ -420,7 +419,11 @@ void SquishTools::setState(SquishTools::State state) break; case RunnerStartFailed: case RunnerStopped: - if (m_request == RecordTestRequested) { + if (m_request == RunnerQueryRequested) { + m_request = ServerStopRequested; + qCInfo(LOG) << "Stopping server from RunnerStopped (query)"; + stopSquishServer(); + } else if (m_request == RecordTestRequested) { if (m_secondaryRunner && m_secondaryRunner->isRunning()) { stopRecorder(); } else { @@ -453,42 +456,6 @@ void SquishTools::setState(SquishTools::State state) } } -void SquishTools::handleSetStateQueryRunner() -{ - switch (m_state) { - case Idle: - setIdle(); - break; - case ServerStarted: - executeRunnerQuery(); - break; - case ServerStartFailed: - m_state = Idle; - m_request = None; - break; - case ServerStopped: - m_state = Idle; - emit shutdownFinished(); - if (m_request == KillOldBeforeQueryRunner) { - startSquishServer(RunnerQueryRequested); - } else { - QTC_ASSERT(false, qDebug() << m_state << m_request); - } - break; - case ServerStopFailed: - m_state = Idle; - break; - case RunnerStartFailed: - case RunnerStopped: - m_request = ServerStopRequested; - qCInfo(LOG) << "Stopping server from RunnerStopped (query)"; - stopSquishServer(); - break; - default: - break; - } -} - void SquishTools::setIdle() { QTC_ASSERT(m_state == Idle, return); diff --git a/src/plugins/squish/squishtools.h b/src/plugins/squish/squishtools.h index 411a4a55126..5b4b27dc3e2 100644 --- a/src/plugins/squish/squishtools.h +++ b/src/plugins/squish/squishtools.h @@ -91,7 +91,6 @@ private: void onServerStateChanged(SquishProcessState state); void setState(State state); - void handleSetStateQueryRunner(); void setIdle(); void startSquishServer(Request request); void stopSquishServer();