Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmin.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmin.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmin.py	(revision 65984)
@@ -525,5 +525,5 @@
 
         # Take action.
-        if sListAction is 'none':
+        if sListAction == 'none':
             pass;
         else:
@@ -664,5 +664,5 @@
                     self._sPageBody += cgitb.html(sys.exc_info());
                 else:
-                    if len(aoErrors) == 0:
+                    if not aoErrors:
                         self._sPageBody += '<p>Successfully regenerated.</p>';
                     else:
@@ -847,5 +847,5 @@
         oGlobalResourceLogic = GlobalResourceLogic(self._oDb)
         dErrors = oData.validateAndConvert(self._oDb);
-        if len(dErrors) == 0:
+        if not dErrors:
             if sAction == WuiAdmin.ksActionGlobalRsrcAdd:
                 oGlobalResourceLogic.addGlobalResource(self._oCurUser.uid, oData)
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminbuildblacklist.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminbuildblacklist.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminbuildblacklist.py	(revision 65984)
@@ -70,5 +70,5 @@
 
         aoFailureReasons = FailureReasonLogic(self._oDisp.getDb()).fetchForCombo()
-        if len(aoFailureReasons) == 0:
+        if not aoFailureReasons:
             from testmanager.webui.wuiadmin import WuiAdmin
             raise WuiException('Please <a href="%s?%s=%s">add</a> some Failure Reasons first.'
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurecategory.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurecategory.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurecategory.py	(revision 65984)
@@ -97,5 +97,5 @@
             cMax      = 4096;
             aoEntries = oLogic.fetchForListingInCategory(0, cMax, tsNow, oData.idFailureCategory)
-            if len(aoEntries) > 0:
+            if aoEntries:
                 oList = WuiAdminFailureReasonList(aoEntries, 0, cMax, tsNow, fnDPrint = None, oDisp = self._oDisp);
                 return [ [ 'Members', oList.show(fShowNavigation = False)[1]], ];
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurereason.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurereason.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurereason.py	(revision 65984)
@@ -93,5 +93,5 @@
 
         aoFailureCategories = FailureCategoryLogic(TMDatabaseConnection()).getFailureCategoriesForCombo()
-        if len(aoFailureCategories) == 0:
+        if not aoFailureCategories:
             from testmanager.webui.wuiadmin import WuiAdmin
             sExceptionMsg = 'Please <a href="%s?%s=%s">add</a> Failure Category first.' % \
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminsystemchangelog.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminsystemchangelog.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminsystemchangelog.py	(revision 65984)
@@ -354,5 +354,5 @@
         #
 
-        if aoChanges is not None and len(aoChanges) > 0:
+        if aoChanges:
             oChangeEntry    = aoChanges[0];
             cAttribsChanged = len(oChangeEntry.aoChanges) + 1;
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestbox.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestbox.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestbox.py	(revision 65984)
@@ -220,5 +220,5 @@
 
         # Count boxes in interesting states.
-        if len(self._aoEntries) > 0:
+        if self._aoEntries:
             cActive = 0;
             cDead   = 0;
@@ -347,5 +347,5 @@
         if oEntry.fCpu64BitGuest   is True: asFeatures.append(u'64\u2011bit\u2011Guest');
         if oEntry.fChipsetIoMmu    is True: asFeatures.append(u'I/O\u2011MMU');
-        sFeatures = u' '.join(asFeatures) if len(asFeatures) > 0 else u'';
+        sFeatures = u' '.join(asFeatures) if asFeatures else u'';
 
         # Collection applicable actions.
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestcase.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestcase.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestcase.py	(revision 65984)
@@ -89,5 +89,5 @@
         fAllDefaultTimeouts = True;
         for oVar in oEntry.aoTestCaseArgs:
-            if fNoSubName and oVar.sSubName is not None and len(oVar.sSubName.strip()) > 0:
+            if fNoSubName and oVar.sSubName is not None and oVar.sSubName.strip():
                 fNoSubName = False;
             if oVar.cGangMembers > 1:
@@ -117,5 +117,5 @@
                        % (utils.formatIntervalSeconds(oTmp.cSecTimeout) if oTmp.cSecTimeout is not None else 'Default',)
             sHtml += u'<td>%s</td></tr>' \
-                % ( webutils.escapeElem(oTmp.sArgs.replace('-', u'\u2011')) if len(oTmp.sArgs) > 0 else u'\u2011',);
+                % ( webutils.escapeElem(oTmp.sArgs.replace('-', u'\u2011')) if oTmp.sArgs else u'\u2011',);
             sHtml += '</tr>\n';
         sHtml += '  </table>'
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestgroup.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestgroup.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuiadmintestgroup.py	(revision 65984)
@@ -85,5 +85,5 @@
 
     def __init__(self, aoEntries, iPage, cItemsPerPage, tsEffective, fnDPrint, oDisp, aiSelectedSortColumns = None):
-        assert len(aoEntries) == 0 or isinstance(aoEntries[0], TestGroupDataEx)
+        assert not aoEntries or isinstance(aoEntries[0], TestGroupDataEx)
 
         WuiListContentBase.__init__(self, aoEntries, iPage, cItemsPerPage, tsEffective, sTitle = 'Test Groups',
@@ -101,5 +101,5 @@
         #
         sHtml = '';
-        if len(oEntry.aoMembers) > 0:
+        if oEntry.aoMembers:
             for oMember in oEntry.aoMembers:
                 sHtml += '<dl>\n' \
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuibase.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuibase.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuibase.py	(revision 65984)
@@ -132,5 +132,5 @@
             if sKey in self.kasDbgParams:
                 self._dDbgParams[sKey] = sValue;
-        if len(self._dDbgParams) > 0:
+        if self._dDbgParams:
             from testmanager.webui.wuicontentbase import WuiTmLink;
             WuiTmLink.kdDbgParams = self._dDbgParams;
@@ -141,5 +141,5 @@
         # Calc a couple of URL base strings for this dispatcher.
         self._sUrlBase          = sScriptName + '?';
-        if len(self._dDbgParams) > 0:
+        if self._dDbgParams:
             self._sUrlBase     += webutils.encodeUrlParams(self._dDbgParams) + '&';
         self._sActionUrlBase    = self._sUrlBase + self.ksParamAction + '=';
@@ -150,6 +150,5 @@
         Redirects the page to the URL given in self._sRedirectTo.
         """
-        assert self._sRedirectTo is not None;
-        assert len(self._sRedirectTo) > 0;
+        assert self._sRedirectTo;
         assert self._sPageBody is None;
         assert self._sPageTitle is None;
@@ -279,5 +278,5 @@
 
         # Side menu form attributes.
-        if len(self._dSideMenuFormAttrs) > 0:
+        if self._dSideMenuFormAttrs:
             dReplacements['@@SIDE_MENU_FORM_ATTRS@@'] = ' '.join(['%s="%s"' % (sKey, webutils.escapeAttr(sValue))
                                                                   for sKey, sValue in self._dSideMenuFormAttrs.iteritems()]);
@@ -1066,5 +1065,5 @@
             sErrorMsg = 'User %s is not allowed to modify anything!' % (self._oCurUser.sUsername,)
 
-        if len(dErrors) == 0 and sErrorMsg is None:
+        if not dErrors and not sErrorMsg:
             oData.convertFromParamNull();
 
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuicontentbase.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuicontentbase.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuicontentbase.py	(revision 65984)
@@ -79,5 +79,5 @@
         self.sExtraAttrs    = sExtraAttrs;
 
-        if dParams is not None and len(dParams) > 0:
+        if dParams:
             # Do some massaging of None arguments.
             dParams = dict(dParams);
@@ -104,5 +104,5 @@
         if self.sTitle is not None:
             sExtraAttrs += 'title="%s" ' % (webutils.escapeAttr(self.sTitle),);
-        if len(sExtraAttrs) > 0 and sExtraAttrs[-1] != ' ':
+        if sExtraAttrs and sExtraAttrs[-1] != ' ':
             sExtraAttrs += ' ';
 
@@ -122,6 +122,6 @@
 
         # Add debug parameters if necessary.
-        if self.kdDbgParams is not None and len(self.kdDbgParams) > 0:
-            if dParams is None or len(dParams) == 0:
+        if self.kdDbgParams:
+            if not dParams:
                 dParams = dict(self.kdDbgParams);
             else:
@@ -140,5 +140,5 @@
                  sFragmentId = None, fBracketed = True):
         from testmanager.webui.wuiadmin import WuiAdmin;
-        if dParams is None or len(dParams) == 0:
+        if not dParams:
             dParams = dict();
         else:
@@ -155,5 +155,5 @@
 
     def __init__(self, sName, sAction, dParams = None, sConfirm = None, sTitle = None, sFragmentId = None, fBracketed = True):
-        if dParams is None or len(dParams) == 0:
+        if not dParams:
             dParams = dict();
         else:
@@ -189,5 +189,5 @@
     """
     def __init__(self, sUrl, sName = None, fBracketed = True):
-        assert sUrl is not None; assert len(sUrl) > 0;
+        assert not sUrl;
         if sName is None:
             sName = 'Build log';
@@ -408,5 +408,5 @@
         assert sMode in [self.ksMode_Add, self.ksMode_Edit, self.ksMode_Show];
         assert len(sTitle) > 1;
-        assert sId is None or len(sId) > 0;
+        assert sId is None or sId;
 
         self._sMode         = sMode;
@@ -698,9 +698,9 @@
         # Add any post form content.
         atPostFormContent = self._generatePostFormContent(self._oData);
-        if atPostFormContent is not None and len(atPostFormContent) > 0:
+        if atPostFormContent:
             for iSection, tSection in enumerate(atPostFormContent):
                 (sSectionTitle, sSectionContent) = tSection;
                 sContent += u'<div id="postform-%d"  class="tmformpostsection">\n' % (iSection,);
-                if sSectionTitle is not None and len(sSectionTitle) > 0:
+                if sSectionTitle:
                     sContent += '<h3 class="tmformpostheader">%s</h3>\n' % (webutils.escapeElem(sSectionTitle),);
                 sContent += u' <div id="postform-%d-content" class="tmformpostcontent">\n' % (iSection,);
@@ -711,5 +711,5 @@
         # Add action to the top.
         aoActions = self._generateTopRowFormActions(self._oData);
-        if len(aoActions) > 0:
+        if aoActions:
             sActionLinks = '<p>%s</p>' % (' '.join(unicode(oLink) for oLink in aoActions));
             sContent = sActionLinks + sContent;
@@ -747,5 +747,5 @@
         if sId is None:
             sId                 = sTitle.strip().replace(' ', '').lower();
-        assert len(sId.strip()) > 0;
+        assert sId.strip();
         self._sId               = sId;
         self._asColumnHeaders   = [];
@@ -763,5 +763,5 @@
             return None;
         sComment = sComment.strip();
-        if len(sComment) == 0:
+        if not sComment:
             return None;
 
@@ -813,5 +813,5 @@
 
         for i, _ in enumerate(aoValues):
-            if i < len(self._asColumnAttribs) and len(self._asColumnAttribs[i]) > 0:
+            if i < len(self._asColumnAttribs) and self._asColumnAttribs[i]:
                 sRow += u'    <td ' + self._asColumnAttribs[i] + '>';
             else:
@@ -821,5 +821,5 @@
                 sRow += aoValues[i].toHtml();
             elif isinstance(aoValues[i], list):
-                if len(aoValues[i]) > 0:
+                if aoValues[i]:
                     for oElement in aoValues[i]:
                         if isinstance(oElement, WuiHtmlBase):
@@ -1003,5 +1003,5 @@
         sPageBody = '<table class="tmtable" id="' + self._sId + '" cellspacing="0">\n';
 
-        if len(self._asColumnHeaders) == 0:
+        if not self._asColumnHeaders:
             self._asColumnHeaders = self._aoEntries[0].getDataAttributes();
 
@@ -1038,5 +1038,5 @@
             sPageBody += self._generateNavigation('top');
 
-        if len(self._aoEntries):
+        if self._aoEntries:
             sPageBody += self._generateTable();
             if fShowNavigation:
@@ -1091,5 +1091,5 @@
         if fShowNavigation:
             sPageBody += self._generateNavigation('top');
-        if len(self._aoEntries) > 0:
+        if self._aoEntries:
 
             sPageBody += '<form action="?%s" method="post" class="tmlistactionform">\n' \
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuigraphwiz.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuigraphwiz.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuigraphwiz.py	(revision 65984)
@@ -129,21 +129,21 @@
 
         if fBits & WuiGraphWiz.kfSeriesName_Product:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += oSeries.oBuildCategory.sProduct;
 
         if fBits & WuiGraphWiz.kfSeriesName_Branch:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += oSeries.oBuildCategory.sBranch;
 
         if fBits & WuiGraphWiz.kfSeriesName_BuildType:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += oSeries.oBuildCategory.sType;
 
         if fBits & WuiGraphWiz.kfSeriesName_OsArchs:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += ' & '.join(oSeries.oBuildCategory.asOsArches);
 
         if fBits & WuiGraphWiz.kfSeriesName_TestCaseArgs:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             if oSeries.idTestCaseArgs is not None:
                 sName += oSeries.oTestCase.sName + ':#' + str(oSeries.idTestCaseArgs);
@@ -151,9 +151,9 @@
                 sName += oSeries.oTestCase.sName;
         elif fBits & WuiGraphWiz.kfSeriesName_TestCase:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += oSeries.oTestCase.sName;
 
         if fBits & WuiGraphWiz.kfSeriesName_TestBox:
-            if len(sName) > 0: sName += ' / ';
+            if sName: sName += ' / ';
             sName += oSeries.oTestBox.sName;
 
@@ -168,5 +168,5 @@
                                     );
         sName = self._getSeriesNameFromBits(oSeries, fGraphName);
-        if len(sName) > 0: sName += ' - ';
+        if sName: sName += ' - ';
         sName += sSampleName;
         return sName;
@@ -183,8 +183,8 @@
             return 'Invalid collection type: "%s"' % (oCollection.sType,);
 
-        sTestName = ', '.join(oCollection.asTests if len(oCollection.asTests[0]) else oCollection.asTests[1:]);
+        sTestName = ', '.join(oCollection.asTests if oCollection.asTests[0] else oCollection.asTests[1:]);
         if sTestName == '':
             # Use the testcase name if there is only one for all series.
-            if len(oCollection.aoSeries) == 0:
+            if not oCollection.aoSeries:
                 return asSampleName[0];
             if len(oCollection.aoSeries) > 1:
@@ -243,5 +243,5 @@
                 aaoRet.append(aoUnitSeries[:cMaxPerGraph]);
                 aoUnitSeries = aoUnitSeries[cMaxPerGraph:];
-            if len(aoUnitSeries) > 0:
+            if aoUnitSeries:
                 aaoRet.append(aoUnitSeries);
 
@@ -462,5 +462,5 @@
                       oBuildCat.idBuildCategory,
                       oBuildCat.sProduct, oBuildCat.sBranch, oBuildCat.sType, ' & '.join(oBuildCat.asOsArches) );
-        assert len(aidBuildCategories) == 0; # SQL should return all currently selected.
+        assert not aidBuildCategories; # SQL should return all currently selected.
 
         sEnd += '   </ol>\n' \
@@ -542,5 +542,5 @@
                            WuiMain.ksParamReportSubjectIds, sSampleName );
 
-            if len(oCollection.aoSeries) > 0:
+            if oCollection.aoSeries:
                 #
                 # Split the series into sub-graphs as needed and produce SVGs.
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuihlpform.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuihlpform.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuihlpform.py	(revision 65984)
@@ -341,5 +341,5 @@
 
         self._addLabel(sName, sLabel, 'list');
-        if len(aoRows) == 0:
+        if not aoRows:
             return self._add('No items</div></div></li>')
         sNameEscaped = escapeAttr(sName);
@@ -648,5 +648,5 @@
         assert len(aoTestGroupMembers) <= len(aoAllTestCases);
         self._addLabel(sName, sLabel);
-        if len(aoAllTestCases) == 0:
+        if not aoAllTestCases:
             return self._add('<li>No testcases available.</li>\n')
 
@@ -752,5 +752,5 @@
 
 
-            if len(oTestCase.aoTestCaseArgs) == 0:
+            if not oTestCase.aoTestCaseArgs:
                 self._add(u'    <td></td> <td></td> <td></td> <td></td>\n'
                           u'  </tr>\n');
@@ -767,5 +767,5 @@
         assert len(aoSchedGroupMembers) <= len(aoAllTestGroups);
         self._addLabel(sName, sLabel);
-        if len(aoAllTestGroups) == 0:
+        if not aoAllTestGroups:
             return self._add(u'<li>No test groups available.</li>\n')
 
@@ -874,5 +874,5 @@
 
         self._addLabel(sName, sLabel);
-        if len(aoAllSchedGroups) == 0:
+        if not aoAllSchedGroups:
             return self._add('<li>No scheduling groups available.</li>\n')
 
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuilogviewer.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuilogviewer.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuilogviewer.py	(revision 65984)
@@ -167,5 +167,5 @@
             iLine  += 1;
             offCur += len(sLine);
-            if offCur >= offFile or len(sLine) == 0:
+            if offCur >= offFile or not sLine:
                 break;
             while isCurLineAtOrAfterCurTs():
@@ -197,5 +197,5 @@
             iLine  += 1;
             offCur += len(sLine);
-            if len(sLine) == 0:
+            if not sLine:
                 break;
         asLines.append('<pre/></div>\n');
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuimain.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuimain.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuimain.py	(revision 65984)
@@ -933,5 +933,5 @@
         sHtml += u' <dl>\n';
         for oCrit in oFilter.aCriteria:
-            if len(oCrit.aoPossible) > 0:
+            if oCrit.aoPossible:
                 if   (    oCrit.oSub is None \
                       and (   oCrit.sState == oCrit.ksState_Selected \
@@ -1231,5 +1231,5 @@
         while True:
             abChunk = oFile.read(262144);
-            if len(abChunk) == 0:
+            if not abChunk:
                 break;
             self._oSrvGlue.writeRaw(abChunk);
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuireport.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuireport.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuireport.py	(revision 65984)
@@ -258,5 +258,5 @@
         sHtml  = u'<h4>Movements:</h4>\n' \
                  u'<ul>\n';
-        if len(oSet.aoEnterInfo) == 0 and len(oSet.aoLeaveInfo) == 0:
+        if not oSet.aoEnterInfo and not oSet.aoLeaveInfo:
             sHtml += u'<li>No changes</li>\n';
         else:
@@ -358,5 +358,5 @@
         # Figure the sorting column.
         if self._aiSortColumns is not None \
-          and len(self._aiSortColumns) > 0 \
+          and self._aiSortColumns \
           and abs(self._aiSortColumns[0]) <= len(oSet.aoPeriods):
             iSortColumn = abs(self._aiSortColumns[0]);
@@ -562,5 +562,5 @@
     def _formatName(oTestCaseArgs):
         """ Internal helper for formatting the testcase name. """
-        if oTestCaseArgs.sSubName is not None and len(oTestCaseArgs.sSubName) > 0:
+        if oTestCaseArgs.sSubName:
             sName = u'%s / %s'  % ( oTestCaseArgs.oTestCase.sName, oTestCaseArgs.sSubName, );
         else:
Index: /trunk/src/VBox/ValidationKit/testmanager/webui/wuitestresult.py
===================================================================
--- /trunk/src/VBox/ValidationKit/testmanager/webui/wuitestresult.py	(revision 65983)
+++ /trunk/src/VBox/ValidationKit/testmanager/webui/wuitestresult.py	(revision 65984)
@@ -91,5 +91,5 @@
 
         for aoSubRows in aoTableContent:
-            if len(aoSubRows) == 0:
+            if not aoSubRows:
                 continue; # Can happen if there is no testsuit.
             oCaption = aoSubRows[0];
@@ -194,5 +194,5 @@
 
 
-        if    len(oTestResult.aoChildren) == 0 \
+        if    not oTestResult.aoChildren \
           and len(oTestResult.aoValues) + len(oTestResult.aoMsgs) + len(oTestResult.aoFiles) == 0:
             # Leaf - single row.
@@ -352,5 +352,5 @@
                                         oTestResult.oReason.oFailureReason.sShort, );
             sCommentHtml = '';
-            if oTestResult.oReason.sComment is not None and len(oTestResult.oReason.sComment.strip()) > 0:
+            if oTestResult.oReason.sComment and oTestResult.oReason.sComment.strip():
                 sCommentHtml = '<br>' + webutils.escapeElem(oTestResult.oReason.sComment.strip());
                 sCommentHtml = sCommentHtml.replace('\n', '<br>');
@@ -400,5 +400,5 @@
             # We need the failure reasons for the combobox.
             aoFailureReasons = FailureReasonLogic(self._oDisp.getDb()).fetchForCombo('Test Sheriff, you figure out why!');
-            assert len(aoFailureReasons) > 0;
+            assert aoFailureReasons;
 
             # For now we'll use the standard form helper.
@@ -454,5 +454,5 @@
         def getTcDepsHtmlList(aoTestCaseData):
             """Get HTML <ul> list of Test Case name items"""
-            if len(aoTestCaseData) > 0:
+            if aoTestCaseData:
                 sTmp = '<ul>'
                 for oTestCaseData in aoTestCaseData:
@@ -465,5 +465,5 @@
         def getGrDepsHtmlList(aoGlobalResourceData):
             """Get HTML <ul> list of Global Resource name items"""
-            if len(aoGlobalResourceData) > 0:
+            if aoGlobalResourceData:
                 sTmp = '<ul>'
                 for oGlobalResourceData in aoGlobalResourceData:
@@ -495,5 +495,5 @@
                           ]),
         ];
-        if oTestCaseEx.sDescription is not None and len(oTestCaseEx.sDescription) > 0:
+        if oTestCaseEx.sDescription:
             aoResultRows.append([oTestCaseEx.sDescription,]);
         aoResultRows.append([ 'Status:', WuiRawHtml('<span class="tmspan-status-%s">%s</span>'
@@ -548,7 +548,7 @@
         if oTestCaseEx.sValidationKitZips is not None and oTestCaseEx.sValidationKitZips != '@VALIDATIONKIT_ZIP@':
             aoResultRows.append([ 'Validation Kit:', oTestCaseEx.sValidationKitZips ]);
-        if oTestCaseEx.aoDepTestCases is not None and len(oTestCaseEx.aoDepTestCases) > 0:
+        if oTestCaseEx.aoDepTestCases:
             aoResultRows.append([ 'Prereq. Test Cases:', oTestCaseEx.aoDepTestCases, getTcDepsHtmlList ]);
-        if oTestCaseEx.aoDepGlobalResources is not None and len(oTestCaseEx.aoDepGlobalResources) > 0:
+        if oTestCaseEx.aoDepGlobalResources:
             aoResultRows.append([ 'Global Resources:', oTestCaseEx.aoDepGlobalResources, getGrDepsHtmlList ]);
 
@@ -616,5 +616,5 @@
                                                  tsNow = tsReportEffectiveDate, fBracketed = False), ]),
         ];
-        if oTestBox.sDescription is not None and len(oTestBox.sDescription) > 0:
+        if oTestBox.sDescription:
             aoTestBoxRows.append([oTestBox.sDescription, ]);
         aoTestBoxRows += [
@@ -856,5 +856,5 @@
 
         # Testcase
-        if oEntry.sSubName is not None and len(oEntry.sSubName) > 0:
+        if oEntry.sSubName:
             sTestCaseName = '%s / %s' % (oEntry.sTestCaseName, oEntry.sSubName,);
         else:
@@ -868,5 +868,5 @@
             sReasonTitle += 'Assigned:\t%s\n' % ( self.formatTsShort(oIt.tsFailureReasonAssigned), );
             sReasonTitle += 'By User: \t%s\n' % ( oIt.oFailureReasonAssigner.sUsername, );
-            if oIt.sFailureReasonComment is not None and len(oIt.sFailureReasonComment) > 0:
+            if oIt.sFailureReasonComment:
                 sReasonTitle += 'Comment: \t%s\n' % ( oIt.sFailureReasonComment, );
             if oIt.oFailureReason.iTicket is not None and oIt.oFailureReason.iTicket > 0:
@@ -874,5 +874,5 @@
             for i, sUrl in enumerate(oIt.oFailureReason.asUrls):
                 sUrl = sUrl.strip();
-                if len(sUrl) > 0:
+                if sUrl:
                     sReasonTitle += 'URL#%u:  \t%s\n' % ( i, sUrl, );
             aoReasons.append(WuiTmLink(oIt.oFailureReason.sShort, WuiAdmin.ksScriptName,
