author | Igor Bukanov <igor@mir2.org> |
Sat, 29 May 2010 23:15:53 +0200 | |
changeset 43209 | d52bf0cbc073d909138e2abb984e976e5194a0f8 |
parent 43208 | 51a5c26e7a6325c460c0968bd83a198413f8bad5 |
child 43210 | 92a66e7519b743d754459b7ff7c351ab3f7d6315 |
push id | 13641 |
push user | rsayre@mozilla.com |
push date | Sun, 06 Jun 2010 19:08:23 +0000 |
treeherder | mozilla-central@5b3604a3cfbe [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | dmandelin |
bugs | 568285 |
milestone | 1.9.3a5pre |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
|
--- a/js/src/tests/jstests.py +++ b/js/src/tests/jstests.py @@ -144,16 +144,23 @@ class ResultsSink: def list(self): for label, paths in sorted(self.groups.items()): if label == '': continue print label for path in paths: print ' %s'%path + if OPTIONS.failure_file: + failure_file = open(OPTIONS.failure_file, 'w') + if not self.all_passed(): + for path in self.groups['REGRESSIONS']: + print >> failure_file, path + failure_file.close() + suffix = '' if self.finished else ' (partial run -- interrupted by user)' if self.all_passed(): print 'PASS' + suffix else: print 'FAIL' + suffix def all_passed(self): return 'REGRESSIONS' not in self.groups @@ -213,16 +220,18 @@ if __name__ == '__main__': op.add_option('-g', '--debug', dest='debug', action='store_true', help='run test in debugger') op.add_option('--valgrind', dest='valgrind', action='store_true', help='run tests in valgrind') op.add_option('--valgrind-args', dest='valgrind_args', help='extra args to pass to valgrind') op.add_option('-c', '--check-manifest', dest='check_manifest', action='store_true', help='check for test files not listed in the manifest') + op.add_option('--failure-file', dest='failure_file', + help='write tests that have not passed to the given file') (OPTIONS, args) = op.parse_args() if len(args) < 1: if not OPTIONS.check_manifest: op.error('missing JS_SHELL argument') JS, args = None, [] else: JS, args = args[0], args[1:] # Convert to an absolute path so we can run JS from a different directory.