Changeset 65154 in vbox for trunk/src/VBox/ValidationKit/testmanager/core
- Timestamp:
- Jan 5, 2017 1:41:32 PM (8 years ago)
- svn:sync-xref-src-repo-rev:
- 112657
- Location:
- trunk/src/VBox/ValidationKit/testmanager/core
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/testmanager/core/base.py
r65091 r65154 1180 1180 ## @name The kind of filtering. 1181 1181 ## @{ 1182 ksKind_AnyOf = 'any-of'; ##< Any of the selected values are included (common). 1183 ksKind_AllOf = 'all-of'; ##< All of the selected values must be matched (rare). 1182 ## 'Element of' by default, 'not an element of' when fInverted is False. 1183 ksKind_ElementOfOrNot = 'element-of-or-not'; 1184 ## The criterion is a special one and cannot be inverted. 1185 ksKind_Special = 'special'; 1184 1186 ## @} 1185 1187 … … 1190 1192 ## @} 1191 1193 1192 def __init__(self, sName, sVarNm = None, sType = ksType_UInt, sState = ksState_NotSelected, sKind = ksKind_ AnyOf,1194 def __init__(self, sName, sVarNm = None, sType = ksType_UInt, sState = ksState_NotSelected, sKind = ksKind_ElementOfOrNot, 1193 1195 sTable = None, sColumn = None, oSub = None): 1194 assert len(sVarNm) in (2,3); # required by wuimain.py1196 assert len(sVarNm) == 2; # required by wuimain.py for filtering. 1195 1197 self.sName = sName; 1196 1198 self.sState = sState; 1197 self.sVarNm = sVarNm if sVarNm is not None else sName;1198 1199 self.sType = sType; 1199 1200 self.sKind = sKind; 1200 self.aoSelected = []; ##< Single value, any type. 1201 self.sVarNm = sVarNm; 1202 self.aoSelected = []; ##< User input from sVarNm. Single value, type according to sType. 1203 self.sInvVarNm = 'i' + sVarNm if sKind == self.ksKind_ElementOfOrNot else None; 1204 self.fInverted = False; ##< User input from sInvVarNm. Inverts the operation (-> not an element of). 1201 1205 self.aoPossible = []; ##< type: list[FilterCriterionValueAndDescription] 1202 1206 self.sTable = sTable; … … 1251 1255 assert False; 1252 1256 if len(oCriterion.aoSelected) > 0: 1253 oCriterion.sState 1257 oCriterion.sState = FilterCriterion.ksState_Selected; 1254 1258 else: 1255 oCriterion.sState = FilterCriterion.ksState_NotSelected; 1259 oCriterion.sState = FilterCriterion.ksState_NotSelected; 1260 1261 if oCriterion.sKind == FilterCriterion.ksKind_ElementOfOrNot: 1262 oCriterion.fInverted = oDisp.getBoolParam(oCriterion.sInvVarNm, fDefault = False); 1256 1263 1257 1264 if oCriterion.oSub is not None: -
trunk/src/VBox/ValidationKit/testmanager/core/testresults.py
r65096 r65154 720 720 assert self.aCriteria[self.kiMemory] is oCrit; 721 721 722 oCrit = FilterCriterion('Misc', sVarNm = 'cf', sTable = 'TestBoxesWithStrings', sColumn = 'it_is_complicated'); 722 oCrit = FilterCriterion('Misc', sVarNm = 'cf', sKind = FilterCriterion.ksKind_Special, 723 sTable = 'TestBoxesWithStrings', sColumn = 'it_is_complicated'); 723 724 oCrit.aoPossible = [ 724 725 FilterCriterionValueAndDescription(self.kiMisc_NestedPaging, "req nested paging"), … … 775 776 else: 776 777 if iCrit == self.kiMemory: 777 sQuery += '%s AND (%s.%s / 1024) IN (' % (sExtraIndent, oCrit.sTable, oCrit.sColumn,);778 sQuery += '%s AND (%s.%s / 1024)' % (sExtraIndent, oCrit.sTable, oCrit.sColumn,); 778 779 else: 779 sQuery += '%s AND %s.%s IN (' % (sExtraIndent, oCrit.sTable, oCrit.sColumn,); 780 sQuery += '%s AND %s.%s' % (sExtraIndent, oCrit.sTable, oCrit.sColumn,); 781 if not oCrit.fInverted: 782 sQuery += ' IN ('; 783 else: 784 sQuery += ' NOT IN ('; 780 785 if oCrit.sType == FilterCriterion.ksType_String: 781 786 sQuery += ', '.join('\'%s\'' % (sValue,) for sValue in oCrit.aoSelected) + ')\n';
Note:
See TracChangeset
for help on using the changeset viewer.