Squish: Run tst_CSUP05 with Clang code model, too

Change-Id: Ief81ba27d8cbd43de5ef9c71b586da8cc372a8bb
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
This commit is contained in:
Robert Loehning
2014-09-25 12:16:37 +02:00
parent 6447eb9cbf
commit ea93a6531c
2 changed files with 54 additions and 48 deletions

View File

@@ -190,6 +190,7 @@
:RunSettingsEnvironmentDetails_Utils::DetailsButton {leftWidget=':RunSettingsUseBuildEnvironment_QLabel' text='Details' type='Utils::DetailsButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'} :RunSettingsEnvironmentDetails_Utils::DetailsButton {leftWidget=':RunSettingsUseBuildEnvironment_QLabel' text='Details' type='Utils::DetailsButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
:RunSettingsUseBuildEnvironment_QLabel {text~='Us(e|ing) <b>Build Environment</b>' type='QLabel' unnamed='1' visible='1'} :RunSettingsUseBuildEnvironment_QLabel {text~='Us(e|ing) <b>Build Environment</b>' type='QLabel' unnamed='1' visible='1'}
:Save Changes.Always save files before build_QCheckBox {name='saveBeforeBuildCheckBox' text='Always save files before build' type='QCheckBox' visible='1' window=':Save Changes_Core::Internal::SaveItemsDialog'} :Save Changes.Always save files before build_QCheckBox {name='saveBeforeBuildCheckBox' text='Always save files before build' type='QCheckBox' visible='1' window=':Save Changes_Core::Internal::SaveItemsDialog'}
:Save Changes.Do not Save_QPushButton {text='Do not Save' type='QPushButton' unnamed='1' visible='1' window=':Save Changes_Core::Internal::SaveItemsDialog'}
:Save Changes.Save All_QPushButton {text='Save All' type='QPushButton' unnamed='1' visible='1' window=':Save Changes_Core::Internal::SaveItemsDialog'} :Save Changes.Save All_QPushButton {text='Save All' type='QPushButton' unnamed='1' visible='1' window=':Save Changes_Core::Internal::SaveItemsDialog'}
:Save Changes_Core::Internal::SaveItemsDialog {name='Core__Internal__SaveItemsDialog' type='Core::Internal::SaveItemsDialog' visible='1' windowTitle='Save Changes'} :Save Changes_Core::Internal::SaveItemsDialog {name='Core__Internal__SaveItemsDialog' type='Core::Internal::SaveItemsDialog' visible='1' windowTitle='Save Changes'}
:Select signal.signalList_QTreeWidget {container=':Go to slot.Select signal_QGroupBox' name='signalList' type='QTreeWidget' visible='1'} :Select signal.signalList_QTreeWidget {container=':Go to slot.Select signal_QGroupBox' name='signalList' type='QTreeWidget' visible='1'}

View File

@@ -39,59 +39,64 @@ def main():
# copy example project to temp directory # copy example project to temp directory
templateDir = prepareTemplate(sourceExample) templateDir = prepareTemplate(sourceExample)
examplePath = os.path.join(templateDir, proFile) examplePath = os.path.join(templateDir, proFile)
startApplication("qtcreator" + SettingsPath) startCreatorTryingClang()
if not startedWithoutPluginError(): if not startedWithoutPluginError():
return return
# open example project # open example project
openQmakeProject(examplePath) openQmakeProject(examplePath)
# wait for parsing to complete # wait for parsing to complete
progressBarWait(30000) progressBarWait(30000)
# open .cpp file in editor models = iterateAvailableCodeModels()
if not openDocument("propertyanimation.Sources.main\\.cpp"): for current in models:
test.fatal("Could not open main.cpp") if current != models[0]:
invokeMenuItem("File", "Exit") selectCodeModel(current)
return test.log("Testing code model: %s" % current)
test.verify(checkIfObjectExists(":Qt Creator_CppEditor::Internal::CPPEditorWidget"), # open .cpp file in editor
"Verifying if: .cpp file is opened in Edit mode.") if not openDocument("propertyanimation.Sources.main\\.cpp"):
# select some word for example "viewer" and press Ctrl+F. test.fatal("Could not open main.cpp")
editorWidget = findObject(":Qt Creator_CppEditor::Internal::CPPEditorWidget") invokeMenuItem("File", "Exit")
if not placeCursorToLine(editorWidget, "QmlApplicationViewer viewer;"): return
invokeMenuItem("File", "Exit") test.verify(checkIfObjectExists(":Qt Creator_CppEditor::Internal::CPPEditorWidget"),
return "Verifying if: .cpp file is opened in Edit mode.")
type(editorWidget, "<Left>") # select some word for example "viewer" and press Ctrl+F.
markText(editorWidget, "Left", 6) editorWidget = findObject(":Qt Creator_CppEditor::Internal::CPPEditorWidget")
type(editorWidget, "<Ctrl+f>") if not placeCursorToLine(editorWidget, "QmlApplicationViewer viewer;"):
# verify if find toolbar exists and if search text contains selected word invokeMenuItem("File", "Exit")
test.verify(checkIfObjectExists(":*Qt Creator.Find_Find::Internal::FindToolBar"), return
"Verifying if: Find/Replace pane is displayed at the bottom of the view.")
test.compare(waitForObject(":*Qt Creator.findEdit_Utils::FilterLineEdit").displayText, "viewer",
"Verifying if: Find line edit contains 'viewer' text.")
# insert some word to "Replace with:" field and select "Replace All".
replaceEditorContent(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), "find")
oldCodeText = str(editorWidget.plainText)
clickButton(waitForObject(":Qt Creator.Replace All_QToolButton"))
mouseClick(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), 5, 5, 0, Qt.LeftButton)
newCodeText = str(editorWidget.plainText)
test.compare(newCodeText, oldCodeText.replace("viewer", "find").replace("Viewer", "find"),
"Verifying if: Found text is replaced with new word properly.")
# select some other word in .cpp file and select "Edit" -> "Find/Replace".
clickButton(waitForObject(":Qt Creator.CloseFind_QToolButton"))
placeCursorToLine(editorWidget, "find.setOrientation(QmlApplicationfind::ScreenOrientationAuto);")
for i in range(25):
type(editorWidget, "<Left>") type(editorWidget, "<Left>")
markText(editorWidget, "Left", 18) markText(editorWidget, "Left", 6)
invokeMenuItem("Edit", "Find/Replace", "Find/Replace") type(editorWidget, "<Ctrl+f>")
replaceEditorContent(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), "QmlApplicationViewer") # verify if find toolbar exists and if search text contains selected word
oldCodeText = str(editorWidget.plainText) test.verify(checkIfObjectExists(":*Qt Creator.Find_Find::Internal::FindToolBar"),
clickButton(waitForObject(":Qt Creator.Replace_QToolButton")) "Verifying if: Find/Replace pane is displayed at the bottom of the view.")
newCodeText = str(editorWidget.plainText) test.compare(waitForObject(":*Qt Creator.findEdit_Utils::FilterLineEdit").displayText, "viewer",
# "::" is used to replace only one occurrence by python "Verifying if: Find line edit contains 'viewer' text.")
test.compare(newCodeText, oldCodeText.replace("QmlApplicationfind::", "QmlApplicationViewer::"), # insert some word to "Replace with:" field and select "Replace All".
"Verifying if: Only selected word is replaced, the rest of found words are not replaced.") replaceEditorContent(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), "find")
# close Find/Replace tab. oldCodeText = str(editorWidget.plainText)
clickButton(waitForObject(":Qt Creator.CloseFind_QToolButton")) clickButton(waitForObject(":Qt Creator.Replace All_QToolButton"))
test.verify(checkIfObjectExists(":*Qt Creator.Find_Find::Internal::FindToolBar", False), mouseClick(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), 5, 5, 0, Qt.LeftButton)
"Verifying if: Find/Replace tab is closed.") newCodeText = str(editorWidget.plainText)
# exit qt creator test.compare(newCodeText, oldCodeText.replace("viewer", "find").replace("Viewer", "find"),
invokeMenuItem("File", "Save All") "Verifying if: Found text is replaced with new word properly.")
# select some other word in .cpp file and select "Edit" -> "Find/Replace".
clickButton(waitForObject(":Qt Creator.CloseFind_QToolButton"))
placeCursorToLine(editorWidget, "find.setOrientation(QmlApplicationfind::ScreenOrientationAuto);")
for i in range(25):
type(editorWidget, "<Left>")
markText(editorWidget, "Left", 18)
invokeMenuItem("Edit", "Find/Replace", "Find/Replace")
replaceEditorContent(waitForObject(":Qt Creator.replaceEdit_Utils::FilterLineEdit"), "QmlApplicationViewer")
oldCodeText = str(editorWidget.plainText)
clickButton(waitForObject(":Qt Creator.Replace_QToolButton"))
newCodeText = str(editorWidget.plainText)
# "::" is used to replace only one occurrence by python
test.compare(newCodeText, oldCodeText.replace("QmlApplicationfind::", "QmlApplicationViewer::"),
"Verifying if: Only selected word is replaced, the rest of found words are not replaced.")
# close Find/Replace tab.
clickButton(waitForObject(":Qt Creator.CloseFind_QToolButton"))
test.verify(checkIfObjectExists(":*Qt Creator.Find_Find::Internal::FindToolBar", False),
"Verifying if: Find/Replace tab is closed.")
invokeMenuItem("File", "Close All")
clickButton(waitForObject(":Save Changes.Do not Save_QPushButton"))
invokeMenuItem("File", "Exit") invokeMenuItem("File", "Exit")