annotate tests/silenttestrunner.py @ 24353:3f6bf9f29e7b

bookmarks: prevent divergent bookmark from being updated unexpectedly Before this patch, "@99" suffixed bookmark may be updated unexpectedly by the bookmark value on the remote side at "hg pull", if all of "@1" to "@99" suffixed bookmarks exist in the local repository, because variable "n" still refers "@99" suffixed bookmark after the loop to examine "@num" suffixes, even though it already exists in the local repository. This patch prevents divergent bookmark from being updated unexpectedly, and shows warning message in such situation. This patch uses original python script "seq.py" instead of "seq" command to create sequence numbers in the test, because "seq" command may not be available: it isn't defined in recent POSIX specification (POSIX.1-2001 2013 Edition or XPG7)
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Tue, 17 Mar 2015 18:20:24 +0900
parents dadcd40b62d8
children fc2268b9a07c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23308
dadcd40b62d8 silenttestrunner: add environment variable to make tests noisy again
Augie Fackler <augie@google.com>
parents: 18665
diff changeset
1 import unittest, sys, os
18665
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
2
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
3 def main(modulename):
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
4 '''run the tests found in module, printing nothing when all tests pass'''
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
5 module = sys.modules[modulename]
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
6 suite = unittest.defaultTestLoader.loadTestsFromModule(module)
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
7 results = unittest.TestResult()
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
8 suite.run(results)
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
9 if results.errors or results.failures:
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
10 for tc, exc in results.errors:
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
11 print 'ERROR:', tc
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
12 print
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
13 sys.stdout.write(exc)
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
14 for tc, exc in results.failures:
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
15 print 'FAIL:', tc
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
16 print
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
17 sys.stdout.write(exc)
2cbfb8c497ee tests: add a test runner utility that prints nothing when all tests pass
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
18 sys.exit(1)
23308
dadcd40b62d8 silenttestrunner: add environment variable to make tests noisy again
Augie Fackler <augie@google.com>
parents: 18665
diff changeset
19
dadcd40b62d8 silenttestrunner: add environment variable to make tests noisy again
Augie Fackler <augie@google.com>
parents: 18665
diff changeset
20 if os.environ.get('SILENT_BE_NOISY'):
dadcd40b62d8 silenttestrunner: add environment variable to make tests noisy again
Augie Fackler <augie@google.com>
parents: 18665
diff changeset
21 main = unittest.main