Changeset 70660 in vbox for trunk/src/VBox/ValidationKit/testmanager
- Timestamp:
- Jan 21, 2018 4:18:58 PM (7 years ago)
- svn:sync-xref-src-repo-rev:
- 120396
- Location:
- trunk/src/VBox/ValidationKit/testmanager
- Files:
-
- 26 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/testmanager/batch/add_build.py
r69111 r70660 34 34 import sys; 35 35 import os; 36 from optparse import OptionParser; 36 from optparse import OptionParser; # pylint: disable=deprecated-module 37 37 38 38 # Add Test Manager's modules path -
trunk/src/VBox/ValidationKit/testmanager/batch/check_for_deleted_builds.py
r69111 r70660 12 12 bisecting problems. 13 13 """ 14 15 from __future__ import print_function; 14 16 15 17 __copyright__ = \ … … 39 41 import sys; 40 42 import os; 41 from optparse import OptionParser; 43 from optparse import OptionParser; # pylint: disable=deprecated-module 42 44 43 45 # Add Test Manager's modules path … … 48 50 from testmanager.core.db import TMDatabaseConnection; 49 51 from testmanager.core.build import BuildLogic; 52 53 50 54 51 55 class BuildChecker(object): # pylint: disable=R0903 … … 70 74 if not self.oConfig.fQuiet: 71 75 if not self.oConfig.fRealRun: 72 print 'Dry run.';76 print('Dry run.'); 73 77 else: 74 print 'Real run! Will commit findings!';78 print('Real run! Will commit findings!'); 75 79 76 80 … … 88 92 aoBuilds = oBuildLogic.fetchForListing(iStart, cMaxRows, tsNow); 89 93 if not self.oConfig.fQuiet and aoBuilds: 90 print 'Processing builds #%s thru #%s' % (aoBuilds[0].idBuild, aoBuilds[-1].idBuild);94 print('Processing builds #%s thru #%s' % (aoBuilds[0].idBuild, aoBuilds[-1].idBuild)); 91 95 92 96 for oBuild in aoBuilds: … … 95 99 if rc is False: 96 100 if not self.oConfig.fQuiet: 97 print 'missing files for build #%s / r%s / %s / %s / %s / %s / %s' \98 % (oBuild.idBuild, oBuild.iRevision, oBuild.sVersion, oBuild.oCat.sType,99 oBuild.oCat.sBranch, oBuild.oCat.sProduct, oBuild.oCat.asOsArches,);100 print ' %s' % (oBuild.sBinaries,);101 print('missing files for build #%s / r%s / %s / %s / %s / %s / %s' 102 % (oBuild.idBuild, oBuild.iRevision, oBuild.sVersion, oBuild.oCat.sType, 103 oBuild.oCat.sBranch, oBuild.oCat.sProduct, oBuild.oCat.asOsArches,)); 104 print(' %s' % (oBuild.sBinaries,)); 101 105 if self.oConfig.fRealRun is True: 102 106 oBuild.fBinariesDeleted = True; 103 107 oBuildLogic.editEntry(oBuild, fCommit = True); 104 108 elif rc is True and not self.oConfig.fQuiet: 105 print 'build #%s still have its files' % (oBuild.idBuild,);109 print('build #%s still have its files' % (oBuild.idBuild,)); 106 110 elif rc is None and not self.oConfig.fQuiet: 107 print 'Unable to determine state of build #%s' % (oBuild.idBuild,);111 print('Unable to determine state of build #%s' % (oBuild.idBuild,)); 108 112 109 113 # advance -
trunk/src/VBox/ValidationKit/testmanager/batch/close_orphaned_testsets.py
r69111 r70660 7 7 Maintenance tool for closing orphaned testsets. 8 8 """ 9 10 from __future__ import print_function; 9 11 10 12 __copyright__ = \ … … 34 36 import sys 35 37 import os 36 from optparse import OptionParser 38 from optparse import OptionParser; # pylint: disable=deprecated-module 37 39 38 40 # Add Test Manager's modules path … … 72 74 # Complete them. 73 75 if self.oConfig.fJustDoIt: 74 print 'Completing %u test sets as abandoned:' % (len(aoOrphans),);76 print('Completing %u test sets as abandoned:' % (len(aoOrphans),)); 75 77 for oTestSet in aoOrphans: 76 print '#%-7u: idTestBox=%-3u tsCreated=%s tsDone=%s' \77 % (oTestSet.idTestSet, oTestSet.idTestBox, oTestSet.tsCreated, oTestSet.tsDone);78 print('#%-7u: idTestBox=%-3u tsCreated=%s tsDone=%s' 79 % (oTestSet.idTestSet, oTestSet.idTestBox, oTestSet.tsCreated, oTestSet.tsDone)); 78 80 oLogic.completeAsAbandoned(oTestSet.idTestSet); 79 print 'Committing...';81 print('Committing...'); 80 82 oDb.commit(); 81 83 else: 82 84 for oTestSet in aoOrphans: 83 print '#%-7u: idTestBox=%-3u tsCreated=%s tsDone=%s' \84 % (oTestSet.idTestSet, oTestSet.idTestBox, oTestSet.tsCreated, oTestSet.tsDone);85 print 'Not completing any testsets without seeing the --just-do-it option.'85 print('#%-7u: idTestBox=%-3u tsCreated=%s tsDone=%s' 86 % (oTestSet.idTestSet, oTestSet.idTestBox, oTestSet.tsCreated, oTestSet.tsDone)); 87 print('Not completing any testsets without seeing the --just-do-it option.'); 86 88 else: 87 print 'No orphaned test sets.\n'89 print('No orphaned test sets.\n'); 88 90 return 0; 89 91 -
trunk/src/VBox/ValidationKit/testmanager/batch/del_build.py
r69111 r70660 8 8 deleted. 9 9 """ 10 11 from __future__ import print_function; 10 12 11 13 __copyright__ = \ … … 35 37 import sys 36 38 import os 37 from optparse import OptionParser 39 from optparse import OptionParser; # pylint: disable=deprecated-module 38 40 39 41 # Add Test Manager's modules path … … 74 76 else: 75 77 if not oConfig.fQuiet: 76 print "del_build.py: Marked %u builds associated with '%s' as deleted." % (cBuilds, sBuildBin,);78 print("del_build.py: Marked %u builds associated with '%s' as deleted." % (cBuilds, sBuildBin,)); 77 79 78 80 oDb.close() -
trunk/src/VBox/ValidationKit/testmanager/batch/filearchiver.py
r69111 r70660 8 8 g_ksZipFileAreaRootDir storage area. 9 9 """ 10 11 from __future__ import print_function; 10 12 11 13 __copyright__ = \ … … 35 37 import sys 36 38 import os 37 from optparse import OptionParser 39 from optparse import OptionParser; # pylint: disable=deprecated-module 38 40 import time; 39 41 import zipfile; … … 48 50 from testmanager.core.db import TMDatabaseConnection; 49 51 from testmanager.core.testset import TestSetData, TestSetLogic; 52 53 50 54 51 55 class FileArchiverBatchJob(object): # pylint: disable=R0903 … … 68 72 """ Verbose output. """ 69 73 if self.fVerbose: 70 print sText;74 print(sText); 71 75 return True; 72 76 73 77 def warning(self, sText): 74 78 """Prints a warning.""" 75 print sText;79 print(sText); 76 80 return True; 77 81 -
trunk/src/VBox/ValidationKit/testmanager/batch/regen_sched_queues.py
r69111 r70660 7 7 Interface used by the admin to regenerate scheduling queues. 8 8 """ 9 10 from __future__ import print_function; 9 11 10 12 __copyright__ = \ … … 34 36 import sys; 35 37 import os; 36 from optparse import OptionParser; 38 from optparse import OptionParser; # pylint: disable=deprecated-module 37 39 38 40 # Add Test Manager's modules path … … 44 46 from testmanager.core.schedulerbase import SchedulerBase; 45 47 from testmanager.core.schedgroup import SchedGroupLogic; 48 49 46 50 47 51 class RegenSchedQueues(object): # pylint: disable=R0903 … … 76 80 for oGroup in aoGroups: 77 81 if not self.oConfig.fQuiet: 78 print '%s (ID %#d):' % (oGroup.sName, oGroup.idSchedGroup,);82 print('%s (ID %#d):' % (oGroup.sName, oGroup.idSchedGroup,)); 79 83 try: 80 84 (aoErrors, asMessages) = SchedulerBase.recreateQueue(oDb, self.oConfig.uid, oGroup.idSchedGroup, 2); 81 85 except Exception as oXcpt: 82 86 oDb.rollback(); 83 print ' !!Hit exception processing "%s": %s' % (oGroup.sName, oXcpt,);87 print(' !!Hit exception processing "%s": %s' % (oGroup.sName, oXcpt,)); 84 88 else: 85 89 if not aoErrors: 86 90 if not self.oConfig.fQuiet: 87 print ' Successfully regenerated.';91 print(' Successfully regenerated.'); 88 92 else: 89 93 iRc = 1; 90 print ' %d errors:' % (len(aoErrors,));94 print(' %d errors:' % (len(aoErrors,))); 91 95 for oError in aoErrors: 92 96 if oError[1] is None: 93 print ' !!%s' % (oError[0],);97 print(' !!%s' % (oError[0],)); 94 98 else: 95 print ' !!%s (%s)' % (oError[0], oError[1]);99 print(' !!%s (%s)' % (oError[0], oError[1])); 96 100 if asMessages and not self.oConfig.fQuiet: 97 print ' %d messages:' % (len(asMessages),);101 print(' %d messages:' % (len(asMessages),)); 98 102 for sMsg in asMessages: 99 print ' ##%s' % (sMsg,);103 print(' ##%s' % (sMsg,)); 100 104 return iRc; 101 105 -
trunk/src/VBox/ValidationKit/testmanager/batch/vcs_import.py
r69111 r70660 7 7 Cron job for importing revision history for a repository. 8 8 """ 9 10 from __future__ import print_function; 9 11 10 12 __copyright__ = \ … … 34 36 import sys; 35 37 import os; 36 from optparse import OptionParser; 38 from optparse import OptionParser; # pylint: disable=deprecated-module 37 39 import xml.etree.ElementTree as ET; 38 40 … … 111 113 asArgs.append(self.oConfig.sUrl); 112 114 if not self.oConfig.fQuiet: 113 print 'Executing: %s' % (asArgs,);115 print('Executing: %s' % (asArgs,)); 114 116 sLogXml = utils.processOutputChecked(asArgs); 115 117 … … 127 129 sMessage = ' '; 128 130 if not self.oConfig.fQuiet: 129 print 'sDate=%s iRev=%u sAuthor=%s sMsg[%s]=%s' % (sDate, iRevision, sAuthor, type(sMessage).__name__, sMessage);131 print('sDate=%s iRev=%u sAuthor=%s sMsg[%s]=%s' % (sDate, iRevision, sAuthor, type(sMessage).__name__, sMessage)); 130 132 oData = VcsRevisionData().initFromValues(self.oConfig.sRepository, iRevision, sDate, sAuthor, sMessage); 131 133 oLogic.addVcsRevision(oData); -
trunk/src/VBox/ValidationKit/testmanager/batch/virtual_test_sheriff.py
r69111 r70660 12 12 13 13 """ 14 15 from __future__ import print_function; 14 16 15 17 __copyright__ = \ … … 41 43 import os; 42 44 import hashlib; 43 import StringIO; 44 from optparse import OptionParser; 45 from PIL import Image; # pylint: disable=import-error 45 if sys.version_info[0] >= 3: 46 from io import StringIO as StringIO; # pylint: disable=import-error,no-name-in-module 47 else: 48 from StringIO import StringIO as StringIO; # pylint: disable=import-error,no-name-in-module 49 from optparse import OptionParser; # pylint: disable=deprecated-module 50 from PIL import Image; # pylint: disable=import-error 46 51 47 52 # Add Test Manager's modules path … … 60 65 from testmanager.core.testresultfailures import TestResultFailureLogic, TestResultFailureData; 61 66 from testmanager.core.useraccount import UserAccountLogic; 67 68 # Python 3 hacks: 69 if sys.version_info[0] >= 3: 70 xrange = range; # pylint: disable=redefined-builtin,invalid-name 62 71 63 72 … … 224 233 else: 225 234 try: 226 oImage = Image.open(StringIO .StringIO(abImageFile));235 oImage = Image.open(StringIO(abImageFile)); 227 236 except Exception as oXcpt: 228 237 self.oSheriff.vprint(u'Error opening the "%s" image bytes using PIL.Image.open: %s' % (oFile.sFile, oXcpt,)) … … 302 311 Returns 1 (for exit code usage.) 303 312 """ 304 print 'error: %s' % (sText,);313 print('error: %s' % (sText,)); 305 314 if self.oLogFile is not None: 306 315 self.oLogFile.write((u'error: %s\n' % (sText,)).encode('utf-8')); … … 313 322 if self.oConfig.fDebug: 314 323 if not self.oConfig.fQuiet: 315 print 'debug: %s' % (sText,);324 print('debug: %s' % (sText, )); 316 325 if self.oLogFile is not None: 317 326 self.oLogFile.write((u'debug: %s\n' % (sText,)).encode('utf-8')); … … 323 332 """ 324 333 if not self.oConfig.fQuiet: 325 print 'info: %s' % (sText,);334 print('info: %s' % (sText,)); 326 335 if self.oLogFile is not None: 327 336 self.oLogFile.write((u'info: %s\n' % (sText,)).encode('utf-8')); -
trunk/src/VBox/ValidationKit/testmanager/core/db.py
r69111 r70660 45 45 psycopg2.extensions.register_type(psycopg2.extensions.UNICODE); 46 46 psycopg2.extensions.register_type(psycopg2.extensions.UNICODEARRAY); 47 else: 48 unicode = str; # pylint: disable=redefined-builtin,invalid-name 49 47 50 48 51 -
trunk/src/VBox/ValidationKit/testmanager/core/failurecategory.py
r69111 r70660 30 30 31 31 32 # Standard Python imports. 33 import sys; 34 32 35 # Validation Kit imports. 33 36 from testmanager.core.base import ModelDataBase, ModelLogicBase, TMRowInUse, TMInvalidData, TMRowNotFound, \ 34 37 ChangeLogEntry, AttributeChangeEntry; 35 38 from testmanager.core.useraccount import UserAccountLogic; 39 40 # Python 3 hacks: 41 if sys.version_info[0] >= 3: 42 xrange = range; # pylint: disable=redefined-builtin,invalid-name 36 43 37 44 -
trunk/src/VBox/ValidationKit/testmanager/core/failurereason.py
r69111 r70660 30 30 31 31 32 # Standard Python imports. 33 import sys; 34 32 35 # Validation Kit imports. 33 36 from testmanager.core.base import ModelDataBase, ModelLogicBase, TMRowNotFound, TMInvalidData, TMRowInUse, \ … … 35 38 from testmanager.core.useraccount import UserAccountLogic; 36 39 40 # Python 3 hacks: 41 if sys.version_info[0] >= 3: 42 xrange = range; # pylint: disable=redefined-builtin,invalid-name 37 43 38 44 -
trunk/src/VBox/ValidationKit/testmanager/core/report.py
r69111 r70660 29 29 __version__ = "$Revision$" 30 30 31 32 # Standard Python imports. 33 import sys; 31 34 32 35 # Validation Kit imports. … … 40 43 from testmanager.core.testresults import TestResultLogic, TestResultFilter; 41 44 from common import constants; 45 46 # Python 3 hacks: 47 if sys.version_info[0] >= 3: 48 xrange = range; # pylint: disable=redefined-builtin,invalid-name 42 49 43 50 -
trunk/src/VBox/ValidationKit/testmanager/core/schedulerbase.py
r69111 r70660 33 33 34 34 # Standard python imports. 35 import sys; 35 36 import unittest; 36 37 … … 49 50 from testmanager.core.testcaseargs import TestCaseArgsDataEx, TestCaseArgsLogic; 50 51 from testmanager.core.testset import TestSetData, TestSetLogic; 52 53 # Python 3 hacks: 54 if sys.version_info[0] >= 3: 55 xrange = range; # pylint: disable=redefined-builtin,invalid-name 56 51 57 52 58 … … 303 309 304 310 305 return True;306 307 308 311 309 312 class SchedQueueData(ModelDataBase): … … 420 423 return self; 421 424 422 def next(self):425 def __next__(self): 423 426 """Returns the next build, raises StopIteration when the end has been reached.""" 424 427 while True: … … 432 435 if not oEntry.fRemoved: 433 436 return oEntry; 434 # end 437 return None; # not reached, but make pylint happy (for now). 438 439 def next(self): 440 """ For python 2.x. """ 441 return self.__next__(); 435 442 436 443 class BuildCacheEntry(object): -
trunk/src/VBox/ValidationKit/testmanager/core/testbox.py
r69111 r70660 32 32 # Standard python imports. 33 33 import copy; 34 import sys; 34 35 import unittest; 35 36 … … 40 41 ChangeLogEntry, AttributeChangeEntry, AttributeChangeEntryPre; 41 42 from testmanager.core.useraccount import UserAccountLogic; 43 44 # Python 3 hacks: 45 if sys.version_info[0] >= 3: 46 xrange = range; # pylint: disable=redefined-builtin,invalid-name 42 47 43 48 -
trunk/src/VBox/ValidationKit/testmanager/core/testcase.py
r69111 r70660 33 33 # Standard python imports. 34 34 import copy; 35 import sys; 35 36 import unittest; 36 37 … … 41 42 from testmanager.core.globalresource import GlobalResourceData; 42 43 from testmanager.core.useraccount import UserAccountLogic; 44 45 # Python 3 hacks: 46 if sys.version_info[0] >= 3: 47 long = int; # pylint: disable=redefined-builtin,invalid-name 43 48 44 49 … … 872 877 oTestCase.idTestCase = int(oTestCase.idTestCase); 873 878 oTestCase.initFromDbWithId(oDb, oTestCase.idTestCase); 874 except Exception ,oXcpt:879 except Exception as oXcpt: 875 880 asErrors.append('Test case dependency #%s: %s' % (oTestCase.idTestCase, oXcpt)); 876 881 aoNewValues.append(oTestCase); … … 883 888 oGlobalRsrc.idTestCase = int(oGlobalRsrc.idGlobalRsrc); 884 889 oGlobalRsrc.initFromDbWithId(oDb, oGlobalRsrc.idGlobalRsrc); 885 except Exception ,oXcpt:890 except Exception as oXcpt: 886 891 asErrors.append('Resource dependency #%s: %s' % (oGlobalRsrc.idGlobalRsrc, oXcpt)); 887 892 aoNewValues.append(oGlobalRsrc); -
trunk/src/VBox/ValidationKit/testmanager/core/testresultfailures.py
r69111 r70660 31 31 """ 32 32 __version__ = "$Revision$" 33 33 34 # Standard python imports. 35 import sys; 34 36 import unittest; 35 37 … … 40 42 from testmanager.core.useraccount import UserAccountLogic; 41 43 44 # Python 3 hacks: 45 if sys.version_info[0] >= 3: 46 xrange = range; # pylint: disable=redefined-builtin,invalid-name 42 47 43 48 -
trunk/src/VBox/ValidationKit/testmanager/core/testresults.py
r69111 r70660 31 31 """ 32 32 __version__ = "$Revision$" 33 34 33 35 # Standard python imports. 36 import sys; 34 37 import unittest; 35 38 … … 49 52 from testmanager.core.testresultfailures import TestResultFailureDataEx; 50 53 from testmanager.core.useraccount import UserAccountLogic; 54 55 # Python 3 hacks: 56 if sys.version_info[0] >= 3: 57 long = int; # pylint: disable=redefined-builtin,invalid-name 51 58 52 59 -
trunk/src/VBox/ValidationKit/testmanager/core/webservergluebase.py
r69111 r70660 546 546 dInfo['sys.hexversion'] = sys.hexversion; 547 547 dInfo['sys.api_version'] = sys.api_version; 548 dInfo['sys.subversion'] = sys.subversion; 548 if hasattr(sys, 'subversion'): 549 dInfo['sys.subversion'] = sys.subversion; # pylint: disable=no-member 549 550 dInfo['sys.platform'] = sys.platform; 550 551 dInfo['sys.executable'] = sys.executable; -
trunk/src/VBox/ValidationKit/testmanager/debug/cgiprofiling.py
r69111 r70660 52 52 try: 53 53 oProfiler.print_stats(sort = sSort); 54 except Exception ,oXcpt:54 except Exception as oXcpt: 55 55 print('<p><pre>%s</pre></p>\n' % (oXcpt,)); 56 56 else: -
trunk/src/VBox/ValidationKit/testmanager/webui/wuiadminfailurecategory.py
r69111 r70660 47 47 dParams = { WuiAdmin.ksParamAction: WuiAdmin.ksActionFailureCategoryDetails, 48 48 FailureCategoryData.ksParam_idFailureCategory: idFailureCategory, }, 49 fBracketed = fBracketed); 49 fBracketed = fBracketed, 50 sTitle = sTitle); 50 51 self.idFailureCategory = idFailureCategory; 51 52 -
trunk/src/VBox/ValidationKit/testmanager/webui/wuibase.py
r69111 r70660 42 42 from testmanager.core.systemlog import SystemLogLogic, SystemLogData; 43 43 from testmanager.core.useraccount import UserAccountLogic 44 45 # Python 3 hacks: 46 if sys.version_info[0] >= 3: 47 unicode = str; # pylint: disable=redefined-builtin,invalid-name 48 long = int; # pylint: disable=redefined-builtin,invalid-name 44 49 45 50 … … 280 285 if self._dSideMenuFormAttrs: 281 286 dReplacements['@@SIDE_MENU_FORM_ATTRS@@'] = ' '.join(['%s="%s"' % (sKey, webutils.escapeAttr(sValue)) 282 for sKey, sValue in self._dSideMenuFormAttrs.ite ritems()]);287 for sKey, sValue in self._dSideMenuFormAttrs.items()]); 283 288 284 289 # Special current user handling. -
trunk/src/VBox/ValidationKit/testmanager/webui/wuicontentbase.py
r69111 r70660 32 32 # Standard python imports. 33 33 import copy; 34 import sys; 34 35 35 36 # Validation Kit imports. … … 40 41 from testmanager.core import db; 41 42 from testmanager.core.base import AttributeChangeEntryPre; 43 44 # Python 3 hacks: 45 if sys.version_info[0] >= 3: 46 unicode = str; # pylint: disable=redefined-builtin,invalid-name 42 47 43 48 … … 691 696 if self._sRedirectTo is not None: 692 697 oForm.addTextHidden(self._oDisp.ksParamRedirectTo, self._sRedirectTo); 693 except WuiException ,oXcpt:698 except WuiException as oXcpt: 694 699 sContent = unicode(oXcpt) 695 700 else: -
trunk/src/VBox/ValidationKit/testmanager/webui/wuigraphwiz.py
r69111 r70660 104 104 else: 105 105 daTestBoxes[oSeries.idTestBox] = [oSeries,]; 106 for _, aoSeriesPerTestBox in daTestBoxes.iteritems():106 for aoSeriesPerTestBox in daTestBoxes.values(): 107 107 if len(aoSeriesPerTestBox) >= 0: 108 108 asOsArches = aoSeriesPerTestBox[0].oBuildCategory.asOsArches; -
trunk/src/VBox/ValidationKit/testmanager/webui/wuihlpform.py
r69111 r70660 31 31 # Standard python imports. 32 32 import copy; 33 import sys; 33 34 34 35 # Validation Kit imports. … … 39 40 from testmanager.core.testcaseargs import TestCaseArgsData; 40 41 from testmanager.core.testgroup import TestGroupMemberData, TestGroupDataEx; 42 43 # Python 3 hacks: 44 if sys.version_info[0] >= 3: 45 unicode = str; # pylint: disable=redefined-builtin,invalid-name 41 46 42 47 -
trunk/src/VBox/ValidationKit/testmanager/webui/wuihlpgraphmatplotlib.py
r69111 r70660 31 31 # Standard Python Import and extensions installed on the system. 32 32 import re; 33 import StringIO; 34 35 import matplotlib; # pylint: disable=F0401 33 import sys; 34 if sys.version_info[0] >= 3: 35 from io import StringIO as StringIO; # pylint: disable=import-error,no-name-in-module 36 else: 37 from StringIO import StringIO as StringIO; # pylint: disable=import-error,no-name-in-module 38 39 import matplotlib; # pylint: disable=F0401 36 40 matplotlib.use('Agg'); # Force backend. 37 import matplotlib.pyplot; # pylint: disable=F040138 from numpy import arange as numpy_arange; # pylint: disable=E0611,E040141 import matplotlib.pyplot; # pylint: disable=F0401 42 from numpy import arange as numpy_arange; # pylint: disable=E0611,E0401 39 43 40 44 # Validation Kit imports. … … 70 74 def _produceSvg(self, oFigure, fTightLayout = True): 71 75 """ Creates an SVG string from the given figure. """ 72 oOutput = StringIO .StringIO();76 oOutput = StringIO(); 73 77 if fTightLayout: 74 78 oFigure.tight_layout(); -
trunk/src/VBox/ValidationKit/testmanager/webui/wuitestresultfailure.py
r69111 r70660 48 48 dParams = { WuiMain.ksParamAction: WuiMain.ksActionTestResultFailureDetails, 49 49 TestResultFailureData.ksParam_idTestResult: idTestResult, }, 50 fBracketed = fBracketed); 50 fBracketed = fBracketed, 51 sTitle = sTitle); 51 52 self.idTestResult = idTestResult; 52 53
Note:
See TracChangeset
for help on using the changeset viewer.