diff --git a/tests/system/objects.map b/tests/system/objects.map index bb758419ecba312824cc721abe2f39165d5677a6..563969df75d13b3ef655dbb8605f6308bb7ffaef 100644 --- a/tests/system/objects.map +++ b/tests/system/objects.map @@ -5,6 +5,7 @@ :*Qt Creator_Core::Internal::FancyToolButton {occurrence='3' type='Core::Internal::FancyToolButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'} :*Qt Creator_Utils::FilterLineEdit {type='Utils::FilterLineEdit' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'} :*Qt Creator_Utils::IconButton {occurrence='4' type='Utils::IconButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'} +:CMake Wizard.Cancel_QPushButton {text='Cancel' type='QPushButton' unnamed='1' visible='1' window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'} :CMake Wizard.Finish_QPushButton {text~='(Finish|Done)' type='QPushButton' unnamed='1' visible='1' window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'} :CMake Wizard.Generator:_QLabel {text='Generator:' type='QLabel' unnamed='1' visible='1' window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'} :CMake Wizard.Next_QPushButton {name='__qt__passive_wizardbutton1' text~='(Next.*|Continue)' type='QPushButton' visible='1' window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'} diff --git a/tests/system/shared/project.py b/tests/system/shared/project.py index a7990a2b2669ff3919a17b912bd508abaf49c698..830ce8e6d447ed7a1d772518df33a7d5e184e9ab 100644 --- a/tests/system/shared/project.py +++ b/tests/system/shared/project.py @@ -27,7 +27,16 @@ def openCmakeProject(projectPath): if index != -1: generatorCombo.setCurrentIndex(index) clickButton(waitForObject(":CMake Wizard.Run CMake_QPushButton", 20000)) - clickButton(waitForObject(":CMake Wizard.Finish_QPushButton", 60000)) + try: + clickButton(waitForObject(":CMake Wizard.Finish_QPushButton", 60000)) + except LookupError: + cmakeOutput = waitForObject("{type='QPlainTextEdit' unnamed='1' visible='1' " + "window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'}") + test.warning("Error while executing cmake - see details for cmake output.", + str(cmakeOutput.plainText)) + clickButton(waitForObject(":CMake Wizard.Cancel_QPushButton")) + return False + return True def shadowBuildDir(path, project, qtVersion, debugVersion): qtVersion = qtVersion.replace(" ", "_") diff --git a/tests/system/suite_general/tst_cmake_speedcrunch/test.py b/tests/system/suite_general/tst_cmake_speedcrunch/test.py index 0307c60eceb4a7f8283b2f812da58109a6356004..89aaa5cc0f4c455a84a00a40ff87c9a984af6edb 100644 --- a/tests/system/suite_general/tst_cmake_speedcrunch/test.py +++ b/tests/system/suite_general/tst_cmake_speedcrunch/test.py @@ -3,16 +3,23 @@ source("../../shared/qtcreator.py") SpeedCrunchPath = "" def main(): - if(which("cmake") == None): - test.fatal("cmake not found") + if (which("cmake") == None): + test.warning("cmake not found in PATH - needed to run this test") + return + if (which("qmake") == None): + test.warning("qmake not found in PATH - needed to run this test") return if not neededFilePresent(SpeedCrunchPath): return startApplication("qtcreator" + SettingsPath) - openCmakeProject(SpeedCrunchPath) - + result = openCmakeProject(SpeedCrunchPath) + if not result: + test.warning("Could not open/create cmake project - leaving test") + invokeMenuItem("File", "Exit") + waitForCleanShutdown() + return waitForSignal("{type='CppTools::Internal::CppModelManager' unnamed='1'}", "sourceFilesRefreshed(QStringList)") # Test that some of the expected items are in the navigation tree