Show More
@@ -640,8 +640,6 b' class Test(object):' | |||||
640 |
|
640 | |||
641 | killdaemons(env['DAEMON_PIDS']) |
|
641 | killdaemons(env['DAEMON_PIDS']) | |
642 |
|
642 | |||
643 | result.refout = self._refout |
|
|||
644 |
|
||||
645 | if not options.keep_tmpdir: |
|
643 | if not options.keep_tmpdir: | |
646 | shutil.rmtree(testtmp) |
|
644 | shutil.rmtree(testtmp) | |
647 |
|
645 | |||
@@ -661,13 +659,13 b' class Test(object):' | |||||
661 | missing = ['irrelevant'] |
|
659 | missing = ['irrelevant'] | |
662 |
|
660 | |||
663 | if failed: |
|
661 | if failed: | |
664 |
re |
|
662 | res = self.fail('hg have failed checking for %s' % failed[-1], | |
665 |
|
|
663 | ret) | |
666 | else: |
|
664 | else: | |
667 | result.skipped = True |
|
665 | result.skipped = True | |
668 |
re |
|
666 | res = self.skip(missing[-1]) | |
669 | elif ret == 'timeout': |
|
667 | elif ret == 'timeout': | |
670 |
re |
|
668 | res = self.fail('timed out', ret) | |
671 | elif out != self._refout: |
|
669 | elif out != self._refout: | |
672 | info = {} |
|
670 | info = {} | |
673 | if not options.nodiff: |
|
671 | if not options.nodiff: | |
@@ -687,11 +685,20 b' class Test(object):' | |||||
687 | else: |
|
685 | else: | |
688 | msg += 'output changed' |
|
686 | msg += 'output changed' | |
689 |
|
687 | |||
690 |
re |
|
688 | res = self.fail(msg, ret) | |
691 | elif ret: |
|
689 | elif ret: | |
692 |
re |
|
690 | res = self.fail(describe(ret), ret) | |
693 | else: |
|
691 | else: | |
694 |
re |
|
692 | res = self.success() | |
|
693 | ||||
|
694 | if (ret != 0 or out != self._refout) and not result.skipped \ | |||
|
695 | and not options.debug: | |||
|
696 | f = open(self._errpath, 'wb') | |||
|
697 | for line in out: | |||
|
698 | f.write(line) | |||
|
699 | f.close() | |||
|
700 | ||||
|
701 | return res | |||
695 |
|
702 | |||
696 | def _run(self, testtmp, replacements, env): |
|
703 | def _run(self, testtmp, replacements, env): | |
697 | raise NotImplemented('Subclasses must implement Test.run()') |
|
704 | raise NotImplemented('Subclasses must implement Test.run()') | |
@@ -789,7 +796,6 b' class TestResult(object):' | |||||
789 | self.ret = None |
|
796 | self.ret = None | |
790 | self.out = None |
|
797 | self.out = None | |
791 | self.duration = None |
|
798 | self.duration = None | |
792 | self.refout = None |
|
|||
793 | self.skipped = False |
|
799 | self.skipped = False | |
794 |
|
800 | |||
795 | class PythonTest(Test): |
|
801 | class PythonTest(Test): | |
@@ -1157,16 +1163,6 b' def runone(options, test, count):' | |||||
1157 | times.append((test, res.duration)) |
|
1163 | times.append((test, res.duration)) | |
1158 | vlog("# Ret was:", ret) |
|
1164 | vlog("# Ret was:", ret) | |
1159 |
|
1165 | |||
1160 | skipped = res.skipped |
|
|||
1161 | refout = res.refout |
|
|||
1162 |
|
||||
1163 | if (ret != 0 or out != refout) and not skipped and not options.debug: |
|
|||
1164 | # Save errors to a file for diagnosis |
|
|||
1165 | f = open(err, "wb") |
|
|||
1166 | for line in out: |
|
|||
1167 | f.write(line) |
|
|||
1168 | f.close() |
|
|||
1169 |
|
||||
1170 | if not options.verbose: |
|
1166 | if not options.verbose: | |
1171 | iolock.acquire() |
|
1167 | iolock.acquire() | |
1172 | sys.stdout.write(result[0]) |
|
1168 | sys.stdout.write(result[0]) |
General Comments 0
You need to be logged in to leave comments.
Login now