Commit d787e4e2 authored by Christian Stenger's avatar Christian Stenger

Squish: Enhance tst_default_settings

Change-Id: I150d4d53a6e6e93749f9cdbfe33971633805573a
Reviewed-by: default avatarRobert Loehning <robert.loehning@digia.com>
parent c2472276
......@@ -34,6 +34,7 @@
:Behavior.Autocomplete common prefix_QCheckBox {container=':CppTools__Internal__CompletionSettingsPage.Behavior_QGroupBox' name='partiallyComplete' text='Autocomplete common prefix' type='QCheckBox' visible='1'}
:Behavior.completionTrigger_QComboBox {container=':CppTools__Internal__CompletionSettingsPage.Behavior_QGroupBox' name='completionTrigger' type='QComboBox' visible='1'}
:Breakpoints_Debugger::Internal::BreakTreeView {container=':DebugModeWidget.Breakpoints_QDockWidget' type='Debugger::Internal::BreakTreeView' unnamed='1' visible='1'}
:BuildAndRun_QTreeView {container=':qt_tabwidget_stackedwidget_QWidget' type='QTreeView' unnamed='1' visible='1'}
:CMake Wizard.Cancel_QPushButton {text='Cancel' type='QPushButton' visible='1' window=':CMake Wizard_CMakeProjectManager::Internal::CMakeOpenProjectWizard'}
:CMake Wizard.Finish_QPushButton {text~='(Finish|Done)' type='QPushButton' 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'}
......@@ -49,9 +50,8 @@
:CodePaster__Internal__PasteSelectDialog.listWidget_QListWidget {name='listWidget' type='QListWidget' visible='1' window=':CodePaster__Internal__PasteSelectDialog_CodePaster::PasteSelectDialog'}
:CodePaster__Internal__PasteSelectDialog.protocolBox_QComboBox {name='protocolBox' type='QComboBox' visible='1' window=':CodePaster__Internal__PasteSelectDialog_CodePaster::PasteSelectDialog'}
:CodePaster__Internal__PasteSelectDialog_CodePaster::PasteSelectDialog {name='CodePaster__Internal__PasteSelectDialog' type='CodePaster::PasteSelectDialog' visible='1'}
:Compiler:_QComboBox {aboveWidget=':CompilerPath.Utils_BaseValidatingLineEdit' container=':qt_tabwidget_stackedwidget_QWidget' leftWidget=':Compiler:_QLabel' type='QComboBox' unnamed='1' visible='1'}
:Compiler:_QComboBox {aboveWidget=':Path.Utils_BaseValidatingLineEdit' container=':qt_tabwidget_stackedwidget_QWidget' leftWidget=':Compiler:_QLabel' type='QComboBox' unnamed='1' visible='1'}
:Compiler:_QLabel {container=':qt_tabwidget_stackedwidget_QWidget' text='Compiler:' type='QLabel' unnamed='1' visible='1'}
:CompilerPath.Utils_BaseValidatingLineEdit {container=':qt_tabwidget_stackedwidget_QWidget' name='LineEdit' type='Utils::BaseValidatingLineEdit' visible='1'}
:Core__Internal__GeneralSettings.User Interface_QGroupBox {container=':qt_tabwidget_stackedwidget.Core__Internal__GeneralSettings_QWidget' name='interfaceBox' title='User Interface' type='QGroupBox' visible='1'}
:CppTools__Internal__CompletionSettingsPage.Behavior_QGroupBox {container=':qt_tabwidget_stackedwidget.CppTools__Internal__CompletionSettingsPage_QWidget' name='groupBox' title='Behavior' type='QGroupBox' visible='1'}
:CreateProject_QStyleItem {clip='false' container=':Qt Creator_QDeclarativeView' enabled='true' text='Create Project' type='LinkedText' unnamed='1' visible='true'}
......@@ -97,7 +97,6 @@
:Hits_QCLuceneResultWidget {aboveWidget=':Hits_QLabel' type='QCLuceneResultWidget' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
:Hits_QLabel {text~='\\\\d+ - \\\\d+ of \\\\d+ Hits' type='QLabel' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
:JavaScript.QmlProfilerEventsTable_QmlProfiler::Internal::QV8ProfilerEventsMainView {container=':*Qt Creator.JavaScript_QDockWidget' name='QmlProfilerEventsTable' type='QmlProfiler::Internal::QV8ProfilerEventsMainView' visible='1'}
:Kits_Or_Compilers_QTreeView {container=':qt_tabwidget_stackedwidget_QWidget' type='QTreeView' unnamed='1' visible='1'}
:Kits_QtVersion_QComboBox {container=':qt_tabwidget_stackedwidget_QWidget' occurrence='5' type='QComboBox' unnamed='1' visible='1'}
:Locals and Expressions_Debugger::Internal::WatchTreeView {container=':DebugModeWidget.Locals and Expressions_QDockWidget' name='WatchWindow' type='Debugger::Internal::WatchTreeView' visible='1' windowTitle='Locals and Expressions'}
:New Text File.Add to project:_QLabel {name='projectLabel' text='Add to project:' type='QLabel' visible='1' window=':New Text File_Utils::FileWizardDialog'}
......@@ -118,6 +117,7 @@
:Options.qt_tabwidget_tabbar_QTabBar {name='qt_tabwidget_tabbar' type='QTabBar' visible='1' window=':Options_Core::Internal::SettingsDialog'}
:Options_Core::Internal::SettingsDialog {type='Core::Internal::SettingsDialog' unnamed='1' visible='1' windowTitle~='(Options|Preferences)'}
:Options_QListView {type='QListView' unnamed='1' visible='1' window=':Options_Core::Internal::SettingsDialog'}
:Path.Utils_BaseValidatingLineEdit {container=':qt_tabwidget_stackedwidget_QWidget' name='LineEdit' type='Utils::BaseValidatingLineEdit' visible='1'}
:QML Debugging.No_QPushButton {text='No' type='QPushButton' unnamed='1' visible='1' window=':QML Debugging_QMessageBox'}
:QML Debugging_QMessageBox {text='The option will only take effect if the project is recompiled. Do you want to recompile now?' type='QMessageBox' unnamed='1' visible='1'}
:QWebPage {type='QWebPage' unnamed='1'}
......
......@@ -185,7 +185,7 @@ def getQtInformationForQmlProject():
waitForObjectItem(":Options_QListView", "Build & Run")
clickItem(":Options_QListView", "Build & Run", 14, 15, 0, Qt.LeftButton)
clickOnTab(":Options.qt_tabwidget_tabbar_QTabBar", "Kits")
targetsTreeView = waitForObject(":Kits_Or_Compilers_QTreeView")
targetsTreeView = waitForObject(":BuildAndRun_QTreeView")
if not __selectTreeItemOnBuildAndRun__(targetsTreeView, "%s(\s\(default\))?" % kit, True):
test.fatal("Found no matching kit - this shouldn't happen.")
clickButton(waitForObject(":Options.Cancel_QPushButton"))
......
......@@ -393,7 +393,7 @@ def getConfiguredKits():
return treeWidget.currentItem().text(0)
# end of internal function for iterateQtVersions
def __setQtVersionForKit__(kit, kitName, kitsQtVersionName):
treeView = waitForObject(":Kits_Or_Compilers_QTreeView")
treeView = waitForObject(":BuildAndRun_QTreeView")
clickItem(treeView, kit, 5, 5, 0, Qt.LeftButton)
qtVersionStr = str(waitForObject(":Kits_QtVersion_QComboBox").currentText)
kitsQtVersionName[kitName] = qtVersionStr
......@@ -446,7 +446,7 @@ def regexVerify(text, expectedTexts):
def checkDebuggingLibrary(kitIDs):
def __getQtVersionForKit__(kit, kitName):
treeView = waitForObject(":Kits_Or_Compilers_QTreeView")
treeView = waitForObject(":BuildAndRun_QTreeView")
clickItem(treeView, kit, 5, 5, 0, Qt.LeftButton)
return str(waitForObject(":Kits_QtVersion_QComboBox").currentText)
# end of internal function for iterate kits
......@@ -598,7 +598,7 @@ def iterateKits(keepOptionsOpen=False, alreadyOnOptionsDialog=False,
waitForObjectItem(":Options_QListView", "Build & Run")
clickItem(":Options_QListView", "Build & Run", 14, 15, 0, Qt.LeftButton)
clickOnTab(":Options.qt_tabwidget_tabbar_QTabBar", "Kits")
treeView = waitForObject(":Kits_Or_Compilers_QTreeView")
treeView = waitForObject(":BuildAndRun_QTreeView")
model = treeView.model()
test.compare(model.rowCount(), 2, "Verifying expected target section count")
autoDetected = model.index(0, 0)
......
......@@ -65,10 +65,18 @@ def __checkBuildAndRun__():
foundCompilers = []
foundCompilerNames = []
clickOnTab(":Options.qt_tabwidget_tabbar_QTabBar", "Compilers")
compilerTV = waitForObject(":Kits_Or_Compilers_QTreeView")
compilerTV = waitForObject(":BuildAndRun_QTreeView")
__iterateTree__(compilerTV, __compFunc__, foundCompilers, foundCompilerNames)
test.verify(__compareCompilers__(foundCompilers, expectedCompilers),
"Verifying found and expected compilers are equal.")
# check debugger
expectedDebuggers = __getExpectedDebuggers__()
clickOnTab(":Options.qt_tabwidget_tabbar_QTabBar", "Debuggers")
foundDebugger = []
debuggerTV = waitForObject(":BuildAndRun_QTreeView")
__iterateTree__(debuggerTV, __dbgFunc__, foundDebugger)
test.verify(__compareDebuggers__(foundDebugger, expectedDebuggers),
"Verifying found and expected debuggers are equal.")
# check Qt versions
qmakePath = which("qmake")
foundQt = []
......@@ -79,7 +87,7 @@ def __checkBuildAndRun__():
foundQt = foundQt[0]
# check kits
clickOnTab(":Options.qt_tabwidget_tabbar_QTabBar", "Kits")
kitsTV = waitForObject(":Kits_Or_Compilers_QTreeView")
kitsTV = waitForObject(":BuildAndRun_QTreeView")
__iterateTree__(kitsTV, __kitFunc__, foundQt, foundCompilerNames)
def __iterateTree__(treeObj, additionalFunc, *additionalParameters):
......@@ -104,8 +112,8 @@ def __iterateTree__(treeObj, additionalFunc, *additionalParameters):
def __compFunc__(it, foundComp, foundCompNames):
try:
waitFor("object.exists(':CompilerPath.Utils_BaseValidatingLineEdit')", 1000)
pathLineEdit = findObject(":CompilerPath.Utils_BaseValidatingLineEdit")
waitFor("object.exists(':Path.Utils_BaseValidatingLineEdit')", 1000)
pathLineEdit = findObject(":Path.Utils_BaseValidatingLineEdit")
foundComp.append(str(pathLineEdit.text))
except:
label = findObject("{buddy={container=':qt_tabwidget_stackedwidget_QWidget' "
......@@ -114,6 +122,11 @@ def __compFunc__(it, foundComp, foundCompNames):
foundComp.append({it:str(label.text)})
foundCompNames.append(it)
def __dbgFunc__(it, foundDbg):
waitFor("object.exists(':Path.Utils_BaseValidatingLineEdit')", 1000)
pathLineEdit = findObject(":Path.Utils_BaseValidatingLineEdit")
foundDbg.append(str(pathLineEdit.text))
def __qtFunc__(it, foundQt, qmakePath):
foundQt.append(it)
qtPath = str(waitForObject(":QtSupport__Internal__QtVersionManager.qmake_QLabel").text)
......@@ -197,6 +210,26 @@ def __getWinEnvVars__():
os.remove(tmpFPath)
return result
def __getExpectedDebuggers__():
result = []
if platform.system() in ('Microsoft', 'Windows'):
result.extend(__getCDB__())
debuggers = ["gdb", "lldb"]
result.extend(filter(None, map(which, debuggers)))
return result
def __getCDB__():
result = []
possibleLocations = ["C:\\Program Files\\Debugging Tools for Windows (x64)",
"C:\\Program Files (x86)\\Windows Kits\\8.0\\Debuggers\\x86",
"C:\\Program Files\\Windows Kits\\8.0\\Debuggers\\x86",
"C:\\Program Files (x86)\\Windows Kits\\8.1\\Debuggers\\x86",
"C:\\Program Files\\Windows Kits\\8.1\\Debuggers\\x86"]
for cdbPath in possibleLocations:
cdb = os.path.join(cdbPath, "cdb.exe")
if os.path.exists(cdb):
result.append(cdb)
return result
def __compareCompilers__(foundCompilers, expectedCompilers):
equal = True
......@@ -232,6 +265,24 @@ def __compareCompilers__(foundCompilers, expectedCompilers):
break
return equal
def __compareDebuggers__(foundDebuggers, expectedDebuggers):
if not len(foundDebuggers) == len(expectedDebuggers):
test.log("Number of found and expected debuggers do not match.",
"Found: %s\nExpected: %s" % (str(foundDebuggers), str(expectedDebuggers)))
return False
if platform.system() in ('Microsoft', 'Windows'):
foundSet = set(__lowerStrs__(foundDebuggers))
expectedSet = set(__lowerStrs__(expectedDebuggers))
else:
foundSet = set(foundDebuggers)
expectedSet = set(expectedDebuggers)
if not (test.verify(not foundSet.symmetric_difference(expectedSet),
"Verifying expected and found debuggers match.")):
test.log("Found debuggers: %s" % foundDebuggers,
"Expected debuggers: %s" % expectedDebuggers)
return False
return True
def __lowerStrs__(iterable):
for it in iterable:
if isinstance(it, (str, unicode)):
......@@ -246,7 +297,8 @@ def __checkCreatedSettings__(settingsFolder):
files = [{os.path.join(qtProj, "QtCreator.db"):0},
{os.path.join(qtProj, "QtCreator.ini"):30}]
folders.append(os.path.join(qtProj, "qtcreator"))
files.extend([{os.path.join(folders[0], "devices.xml"):0},
files.extend([{os.path.join(folders[0], "debuggers.xml"):0},
{os.path.join(folders[0], "devices.xml"):0},
{os.path.join(folders[0], "helpcollection.qhc"):0},
{os.path.join(folders[0], "profiles.xml"):0},
{os.path.join(folders[0], "qtversion.xml"):0},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment