tests/run-tests.py
changeset 21330 3f79bacbf80b
parent 21329 8ead79ffbc40
child 21331 bfe929a4b45b
equal deleted inserted replaced
21329:8ead79ffbc40 21330:3f79bacbf80b
   590         if not (options.whitelisted and self._test in options.whitelisted):
   590         if not (options.whitelisted and self._test in options.whitelisted):
   591             if options.blacklist and self._test in options.blacklist:
   591             if options.blacklist and self._test in options.blacklist:
   592                 result.skipped = True
   592                 result.skipped = True
   593                 return self.skip('blacklisted')
   593                 return self.skip('blacklisted')
   594 
   594 
       
   595             if options.retest and not os.path.exists('%s.err' % self._test):
       
   596                 return self.ignore('not retesting')
       
   597 
   595         # Remove any previous output files.
   598         # Remove any previous output files.
   596         if os.path.exists(self._errpath):
   599         if os.path.exists(self._errpath):
   597             os.remove(self._errpath)
   600             os.remove(self._errpath)
   598 
   601 
   599         testtmp = os.path.join(self._threadtmp, os.path.basename(self._path))
   602         testtmp = os.path.join(self._threadtmp, os.path.basename(self._path))
   760     def skip(self, msg):
   763     def skip(self, msg):
   761         if self._options.verbose:
   764         if self._options.verbose:
   762             log("\nSkipping %s: %s" % (self._path, msg))
   765             log("\nSkipping %s: %s" % (self._path, msg))
   763 
   766 
   764         return 's', self._test, msg
   767         return 's', self._test, msg
       
   768 
       
   769     def ignore(self, msg):
       
   770         return 'i', self._test, msg
   765 
   771 
   766 class TestResult(object):
   772 class TestResult(object):
   767     """Holds the result of a test execution."""
   773     """Holds the result of a test execution."""
   768 
   774 
   769     def __init__(self):
   775     def __init__(self):
  1113     def skip(msg):
  1119     def skip(msg):
  1114         if options.verbose:
  1120         if options.verbose:
  1115             log("\nSkipping %s: %s" % (testpath, msg))
  1121             log("\nSkipping %s: %s" % (testpath, msg))
  1116         return 's', test, msg
  1122         return 's', test, msg
  1117 
  1123 
  1118     def ignore(msg):
       
  1119         return 'i', test, msg
       
  1120 
       
  1121     testpath = os.path.join(TESTDIR, test)
  1124     testpath = os.path.join(TESTDIR, test)
  1122     err = os.path.join(TESTDIR, test + ".err")
  1125     err = os.path.join(TESTDIR, test + ".err")
  1123     lctest = test.lower()
  1126     lctest = test.lower()
  1124 
  1127 
  1125     if not (options.whitelisted and test in options.whitelisted):
  1128     if not (options.whitelisted and test in options.whitelisted):
  1126         if options.retest and not os.path.exists(test + ".err"):
       
  1127             return ignore("not retesting")
       
  1128 
       
  1129         if options.keywords:
  1129         if options.keywords:
  1130             fp = open(test)
  1130             fp = open(test)
  1131             t = fp.read().lower() + test.lower()
  1131             t = fp.read().lower() + test.lower()
  1132             fp.close()
  1132             fp.close()
  1133             for k in options.keywords.lower().split():
  1133             for k in options.keywords.lower().split():