Add a command line option to keep application open after running tests

This commit is contained in:
bgbsww
2024-07-31 15:29:37 -04:00
committed by Chris Hennes
parent a721dae67a
commit 2cd760ac40
2 changed files with 11 additions and 5 deletions

View File

@@ -1584,7 +1584,7 @@ void MainWindow::delayedStartup()
if (App::Application::Config()["RunMode"] == "Internal") {
QTimer::singleShot(1000, this, []{
try {
Base::Interpreter().runString(
string command =
"import sys\n"
"import FreeCAD\n"
"import QtUnitGui\n\n"
@@ -1592,8 +1592,11 @@ void MainWindow::delayedStartup()
"QtUnitGui.addTest(testCase)\n"
"QtUnitGui.setTest(testCase)\n"
"result = QtUnitGui.runTest()\n"
"sys.stdout.flush()\n"
"sys.exit(0 if result else 1)");
"sys.stdout.flush()\n";
if (App::Application::Config()["ExitTests"] == "yes") {
command += "sys.exit(0 if result else 1)";
}
Base::Interpreter().runString(command.c_str());
}
catch (const Base::SystemExitException&) {
throw;