forked from qt-creator/qt-creator
Squish: Introduce helper function for checking for strings
In Python3 type unicode is unavailable since it's implicit with "str". The new functions helps porting code. Change-Id: I5de0fa182acbbaf267ed51f66f658cb9c884f4c5 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -37,7 +37,7 @@ def placeCursorToLine(editor, line, isRegex=False):
|
||||
return waitForObject(editor)
|
||||
|
||||
isDarwin = platform.system() == 'Darwin'
|
||||
if not isinstance(editor, (str, unicode)):
|
||||
if not isString(editor):
|
||||
editor = objectMap.realName(editor)
|
||||
oldPosition = 0
|
||||
jumpToFirstLine(getEditor())
|
||||
@@ -120,7 +120,7 @@ def replaceEditorContent(editor, newcontent):
|
||||
type(editor, newcontent)
|
||||
|
||||
def typeLines(editor, lines):
|
||||
if isinstance(lines, (str, unicode)):
|
||||
if isString(lines):
|
||||
lines = [lines]
|
||||
if isinstance(lines, (list, tuple)):
|
||||
for line in lines:
|
||||
|
@@ -35,10 +35,10 @@ def changeFilePermissions(dirPath, readPerm, writePerm, excludeFileNames=None):
|
||||
permission |= stat.S_IWRITE
|
||||
if excludeFileNames == None:
|
||||
excludeFileNames = []
|
||||
elif isinstance(excludeFileNames, (str, unicode)):
|
||||
elif isString(excludeFileNames):
|
||||
excludeFileNames = [excludeFileNames]
|
||||
if not isinstance(excludeFileNames, (tuple, list)):
|
||||
test.warning("File names to exclude must be of type str, unicode, list, tuple or None - "
|
||||
test.warning("File names to exclude must be of type str, list, tuple or None - "
|
||||
"ignoring parameter this time.")
|
||||
excludeFileNames = []
|
||||
if not os.path.isdir(dirPath):
|
||||
|
@@ -95,8 +95,8 @@ def setRunInTerminal(wantedKit, runInTerminal=True):
|
||||
switchViewTo(ViewConstants.EDIT)
|
||||
|
||||
def __getTargetFromToolTip__(toolTip):
|
||||
if toolTip == None or not isinstance(toolTip, (str, unicode)):
|
||||
test.warning("Parameter toolTip must be of type str or unicode and can't be None!")
|
||||
if toolTip == None or not isString(toolTip):
|
||||
test.warning("Parameter toolTip must be of type str and can't be None!")
|
||||
return None
|
||||
pattern = re.compile(".*<b>Kit:</b>(.*)<b>Deploy.*")
|
||||
target = pattern.match(toolTip)
|
||||
@@ -108,7 +108,7 @@ def __getTargetFromToolTip__(toolTip):
|
||||
|
||||
def getExecutableAndTargetFromToolTip(toolTip):
|
||||
target = __getTargetFromToolTip__(toolTip)
|
||||
if toolTip == None or not isinstance(toolTip, (str, unicode)):
|
||||
if toolTip == None or not isString(toolTip):
|
||||
return None, target
|
||||
pattern = re.compile('.*<b>Run:</b>(.*)</.*')
|
||||
exe = pattern.match(toolTip)
|
||||
|
@@ -76,7 +76,7 @@ def ensureChecked(objectName, shouldBeChecked = True, timeout=20000):
|
||||
# or the object itself. If it is an object, it must exist already.
|
||||
# param expectedState is the expected enable state of the object
|
||||
def verifyEnabled(objectSpec, expectedState = True):
|
||||
if isinstance(objectSpec, (str, unicode)):
|
||||
if isString(objectSpec):
|
||||
waitFor("object.exists('" + str(objectSpec).replace("'", "\\'") + "')", 20000)
|
||||
foundObject = findObject(objectSpec)
|
||||
else:
|
||||
@@ -154,7 +154,7 @@ def which(program):
|
||||
def cleanUpUserFiles(pathsToProFiles=None):
|
||||
if pathsToProFiles==None:
|
||||
return False
|
||||
if isinstance(pathsToProFiles, (str, unicode)):
|
||||
if isString(pathsToProFiles):
|
||||
filelist = glob.glob(pathsToProFiles+".user*")
|
||||
elif isinstance(pathsToProFiles, (list, tuple)):
|
||||
filelist = []
|
||||
@@ -398,10 +398,10 @@ def enabledCheckBoxExists(text):
|
||||
|
||||
# this function verifies if the text matches the given
|
||||
# regex inside expectedTexts
|
||||
# param text must be a single str/unicode
|
||||
# param expectedTexts can be str/unicode/list/tuple
|
||||
# param text must be a single str
|
||||
# param expectedTexts can be str/list/tuple
|
||||
def regexVerify(text, expectedTexts):
|
||||
if isinstance(expectedTexts, (str,unicode)):
|
||||
if isString(expectedTexts):
|
||||
expectedTexts = [expectedTexts]
|
||||
for curr in expectedTexts:
|
||||
pattern = re.compile(curr)
|
||||
@@ -453,7 +453,7 @@ def iterateQtVersions(keepOptionsOpen=False, alreadyOnOptionsDialog=False,
|
||||
result.append({target:version})
|
||||
if additionalFunction:
|
||||
try:
|
||||
if isinstance(additionalFunction, (str, unicode)):
|
||||
if isString(additionalFunction):
|
||||
currResult = globals()[additionalFunction](target, version, *argsForAdditionalFunc)
|
||||
else:
|
||||
currResult = additionalFunction(target, version, *argsForAdditionalFunc)
|
||||
@@ -514,7 +514,7 @@ def iterateKits(keepOptionsOpen=False, alreadyOnOptionsDialog=False,
|
||||
currentItem.replace(".", "\\.")])
|
||||
if additionalFunction:
|
||||
try:
|
||||
if isinstance(additionalFunction, (str, unicode)):
|
||||
if isString(additionalFunction):
|
||||
currResult = globals()[additionalFunction](item, kitName, *argsForAdditionalFunc)
|
||||
else:
|
||||
currResult = additionalFunction(item, kitName, *argsForAdditionalFunc)
|
||||
@@ -674,3 +674,10 @@ def getHelpViewer():
|
||||
|
||||
def getHelpTitle():
|
||||
return str(getHelpViewer().title())
|
||||
|
||||
|
||||
def isString(sth):
|
||||
if sys.version_info.major > 2:
|
||||
return isinstance(sth, str)
|
||||
else:
|
||||
return isinstance(sth, (str, unicode))
|
||||
|
@@ -306,7 +306,7 @@ def __compareCompilers__(foundCompilers, expectedCompilers):
|
||||
if isinstance(currentFound, dict):
|
||||
foundExp = False
|
||||
for currentExp in expectedCompilers:
|
||||
if isinstance(currentExp, (str, unicode)):
|
||||
if isString(currentExp):
|
||||
continue
|
||||
key = currentExp.keys()[0]
|
||||
# special case for (fuzzy) regex comparison on Windows (internal LLVM)
|
||||
@@ -353,7 +353,7 @@ def __compareDebuggers__(foundDebuggers, expectedDebuggers):
|
||||
|
||||
def __lowerStrs__(iterable):
|
||||
for it in iterable:
|
||||
if isinstance(it, (str, unicode)):
|
||||
if isString(it):
|
||||
yield it.lower()
|
||||
else:
|
||||
yield it
|
||||
|
Reference in New Issue
Block a user