Mercurial > hg
changeset 21453:aaf52b78327e
run-tests: store skipped state on Test
As code is being moved between functions, we need a member variable to
hold skipped state.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sun, 20 Apr 2014 15:19:21 -0700 |
parents | 1517c0461b75 |
children | 046587aa1c8a |
files | tests/run-tests.py |
diffstat | 1 files changed, 11 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/run-tests.py Sun Apr 20 15:16:29 2014 -0700 +++ b/tests/run-tests.py Sun Apr 20 15:19:21 2014 -0700 @@ -361,6 +361,7 @@ self._out = None self._duration = None self._result = None + self._skipped = None # If we're not in --debug mode and reference output file exists, # check test output against it. @@ -390,6 +391,7 @@ self._out = None self._duration = None self._result = None + self._skipped = None def run(self): """Run this test instance. @@ -461,7 +463,7 @@ return 'killed by signal: %d' % -ret return 'returned error code %d' % ret - skipped = False + self._skipped = False if ret == self.SKIPPED_STATUS: if out is None: # Debug mode, nothing to parse. @@ -477,7 +479,7 @@ self._result = self.fail('hg have failed checking for %s' % failed[-1], ret) else: - skipped = True + self._skipped = True self._result = self.skip(missing[-1]) elif ret == 'timeout': self._result = self.fail('timed out', ret) @@ -500,7 +502,7 @@ else: msg += 'output changed' - if (ret != 0 or out != self._refout) and not skipped \ + if (ret != 0 or out != self._refout) and not self._skipped \ and not options.debug: f = open(self._errpath, 'wb') for line in out: @@ -513,6 +515,12 @@ else: self._result = self.success() + if (ret != 0 or out != self._refout) and not self._skipped \ + and not options.debug: + f = open(self._errpath, 'wb') + for line in out: + f.write(line) + f.close() if not self._unittest: self.tearDown()