From adda8601e6c49b4e61d7e5cdb02534c7793c14ff Mon Sep 17 00:00:00 2001
From: Burak Hancerli <burak.hancerli@qt.io>
Date: Fri, 28 Feb 2025 10:06:08 +0100
Subject: [PATCH] tests: fix more tests

---
 src/backend/backend.cpp        | 2 +-
 src/backend/main.cpp           | 1 +
 src/backend/projectmanager.cpp | 4 +++-
 tests/tst_projectmanager.cpp   | 6 +++++-
 4 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/backend/backend.cpp b/src/backend/backend.cpp
index f972c46..fe564c3 100644
--- a/src/backend/backend.cpp
+++ b/src/backend/backend.cpp
@@ -261,7 +261,7 @@ void Backend::runProject(const QString &id, const QByteArray &projectData)
             QMetaObject::invokeMethod(m_dsManager.get(), "sendProjectStopped", Q_ARG(QString, id));
         else {
             QMetaObject::invokeMethod(m_projectManager.get(), "showAppWindow");
-            QMetaObject::invokeMethod(m_dsManager.get(), "sendProjectRunning", Q_ARG(QString, id));
+            QMetaObject::invokeMethod(m_dsManager.get(), "sendProjectStarted", Q_ARG(QString, id));
         }
 
         emit popupClose();
diff --git a/src/backend/main.cpp b/src/backend/main.cpp
index ee4a439..3c4bc11 100644
--- a/src/backend/main.cpp
+++ b/src/backend/main.cpp
@@ -50,6 +50,7 @@ int main(int argc, char *argv[])
 #ifdef Q_OS_ANDROID
     view.showMaximized();
 #else
+    QApplication::setWindowIcon(QIcon(QStringLiteral(":/images/appicon.svg")));
     view.show();
 #endif
 
diff --git a/src/backend/projectmanager.cpp b/src/backend/projectmanager.cpp
index e3e785e..90a1e04 100644
--- a/src/backend/projectmanager.cpp
+++ b/src/backend/projectmanager.cpp
@@ -287,6 +287,8 @@ bool ProjectManager::runProjectInternal(const QByteArray &project)
 
     qDebug() << "Setting up the quickWindow";
     m_quickWindow.reset(qobject_cast<QQuickWindow *>(topLevel));
+    m_quickWindow->setVisible(false);
+
     if (m_quickWindow) {
         qDebug() << "Running with incubator controller";
         m_qmlEngine->setIncubationController(m_quickWindow->incubationController());
@@ -388,7 +390,7 @@ void ProjectManager::showAppWindow()
 
 void ProjectManager::stopProject()
 {
-    if (!m_quickWindow || !m_quickWindow->isVisible())
+    if (!m_quickWindow)
         return;
 
     qDebug("Stopping the QML app window");
diff --git a/tests/tst_projectmanager.cpp b/tests/tst_projectmanager.cpp
index 6dac396..1be6c91 100644
--- a/tests/tst_projectmanager.cpp
+++ b/tests/tst_projectmanager.cpp
@@ -44,6 +44,8 @@ void TestProjectManager::testStopProject()
     projectManager.stopProject();
     QVERIFY(projectManager.sessionId().isEmpty());
     QVERIFY(projectManager.m_quickWindow.isNull());
+    QVERIFY(projectManager.m_qmlEngine.isNull());
+    QVERIFY(projectManager.m_qmlComponent.isNull());
 }
 
 void TestProjectManager::testRegisterResource()
@@ -119,7 +121,7 @@ void TestProjectManager::testRunProjectInternal()
     QVERIFY(projectManager.m_qmlEngine);
     QVERIFY(projectManager.m_qmlComponent);
     QVERIFY(projectManager.m_quickWindow);
-    QVERIFY(projectManager.m_quickWindow->isVisible());
+    QVERIFY(projectManager.m_quickWindow->isVisible() == false);
 }
 
 void TestProjectManager::testFindFile()
@@ -202,6 +204,8 @@ void TestProjectManager::testShowAppWindow()
     ProjectManager projectManager;
 
     projectManager.runProject(m_projectThatCanRun, true, "sessionId");
+    QVERIFY(projectManager.m_quickWindow->isVisible() == false);
 
+    projectManager.showAppWindow();
     QVERIFY(projectManager.m_quickWindow->isVisible());
 }
-- 
GitLab