comparison tests/run-tests.py @ 21329:8ead79ffbc40

run-tests: move blacklist skipping to Test.run()
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 19 Apr 2014 21:02:51 -0700
parents 9da0761a22a1
children 3f79bacbf80b
comparison
equal deleted inserted replaced
21328:9da0761a22a1 21329:8ead79ffbc40
584 def run(self, result): 584 def run(self, result):
585 if not os.path.exists(self._path): 585 if not os.path.exists(self._path):
586 result.skipped = True 586 result.skipped = True
587 return self.skip("Doesn't exist") 587 return self.skip("Doesn't exist")
588 588
589 options = self._options
590 if not (options.whitelisted and self._test in options.whitelisted):
591 if options.blacklist and self._test in options.blacklist:
592 result.skipped = True
593 return self.skip('blacklisted')
594
589 # Remove any previous output files. 595 # Remove any previous output files.
590 if os.path.exists(self._errpath): 596 if os.path.exists(self._errpath):
591 os.remove(self._errpath) 597 os.remove(self._errpath)
592 598
593 testtmp = os.path.join(self._threadtmp, os.path.basename(self._path)) 599 testtmp = os.path.join(self._threadtmp, os.path.basename(self._path))
594 os.mkdir(testtmp) 600 os.mkdir(testtmp)
595 replacements, port = self._getreplacements(testtmp) 601 replacements, port = self._getreplacements(testtmp)
596 env = self._getenv(testtmp, port) 602 env = self._getenv(testtmp, port)
597 self._daemonpids.append(env['DAEMON_PIDS']) 603 self._daemonpids.append(env['DAEMON_PIDS'])
598 createhgrc(env['HGRCPATH'], self._options) 604 createhgrc(env['HGRCPATH'], options)
599 605
600 starttime = time.time() 606 starttime = time.time()
601 607
602 def updateduration(): 608 def updateduration():
603 result.duration = time.time() - starttime 609 result.duration = time.time() - starttime
618 624
619 killdaemons(env['DAEMON_PIDS']) 625 killdaemons(env['DAEMON_PIDS'])
620 626
621 result.refout = self._refout 627 result.refout = self._refout
622 628
623 if not self._options.keep_tmpdir: 629 if not options.keep_tmpdir:
624 shutil.rmtree(testtmp) 630 shutil.rmtree(testtmp)
625 631
626 def describe(ret): 632 def describe(ret):
627 if ret < 0: 633 if ret < 0:
628 return 'killed by signal: %d' % -ret 634 return 'killed by signal: %d' % -ret
646 return self.skip(missing[-1]) 652 return self.skip(missing[-1])
647 elif ret == 'timeout': 653 elif ret == 'timeout':
648 return self.fail('timed out', ret) 654 return self.fail('timed out', ret)
649 elif out != self._refout: 655 elif out != self._refout:
650 info = {} 656 info = {}
651 if not self._options.nodiff: 657 if not options.nodiff:
652 iolock.acquire() 658 iolock.acquire()
653 if self._options.view: 659 if options.view:
654 os.system("%s %s %s" % (self._options.view, self._refpath, 660 os.system("%s %s %s" % (options.view, self._refpath,
655 self._errpath)) 661 self._errpath))
656 else: 662 else:
657 info = showdiff(self._refout, out, self._refpath, 663 info = showdiff(self._refout, out, self._refpath,
658 self._errpath) 664 self._errpath)
659 iolock.release() 665 iolock.release()
1115 testpath = os.path.join(TESTDIR, test) 1121 testpath = os.path.join(TESTDIR, test)
1116 err = os.path.join(TESTDIR, test + ".err") 1122 err = os.path.join(TESTDIR, test + ".err")
1117 lctest = test.lower() 1123 lctest = test.lower()
1118 1124
1119 if not (options.whitelisted and test in options.whitelisted): 1125 if not (options.whitelisted and test in options.whitelisted):
1120 if options.blacklist and test in options.blacklist:
1121 return skip("blacklisted")
1122
1123 if options.retest and not os.path.exists(test + ".err"): 1126 if options.retest and not os.path.exists(test + ".err"):
1124 return ignore("not retesting") 1127 return ignore("not retesting")
1125 1128
1126 if options.keywords: 1129 if options.keywords:
1127 fp = open(test) 1130 fp = open(test)