summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorTimothy J Fontaine <tjfontaine@gmail.com>2012-12-18 23:10:17 -0500
committerBen Noordhuis <info@bnoordhuis.nl>2012-12-19 11:16:23 +0100
commit14ed1732cee8d1e721977eb2673b88995ef46608 (patch)
tree1377cc445cda2af30def8963b433c2d30e9ec65a /tools
parent43538f4f8fc7c3395c53c8fff808d31d8faf79db (diff)
downloadnodejs-14ed1732cee8d1e721977eb2673b88995ef46608.tar.gz
nodejs-14ed1732cee8d1e721977eb2673b88995ef46608.tar.bz2
nodejs-14ed1732cee8d1e721977eb2673b88995ef46608.zip
test: add TAP output to the test runner
Diffstat (limited to 'tools')
-rwxr-xr-xtools/test.py28
1 files changed, 27 insertions, 1 deletions
diff --git a/tools/test.py b/tools/test.py
index d711f9ca1..e94ad24f8 100755
--- a/tools/test.py
+++ b/tools/test.py
@@ -221,6 +221,31 @@ class DotsProgressIndicator(SimpleProgressIndicator):
sys.stdout.flush()
+class TapProgressIndicator(SimpleProgressIndicator):
+
+ def Starting(self):
+ print '1..%i' % len(self.cases)
+ self._done = 0
+
+ def AboutToRun(self, case):
+ pass
+
+ def HasRun(self, output):
+ self._done += 1
+ command = basename(output.command[1])
+ if output.UnexpectedOutput():
+ print 'not ok %i - %s' % (self._done, command)
+ for l in output.output.stderr.split(os.linesep):
+ print '#' + l
+ for l in output.output.stdout.split(os.linesep):
+ print '#' + l
+ else:
+ print 'ok %i - %s' % (self._done, command)
+
+ def Done(self):
+ pass
+
+
class CompactProgressIndicator(ProgressIndicator):
def __init__(self, cases, templates):
@@ -311,6 +336,7 @@ PROGRESS_INDICATORS = {
'verbose': VerboseProgressIndicator,
'dots': DotsProgressIndicator,
'color': ColorProgressIndicator,
+ 'tap': TapProgressIndicator,
'mono': MonochromeProgressIndicator
}
@@ -1140,7 +1166,7 @@ def BuildOptions():
result.add_option("-S", dest="scons_flags", help="Flag to pass through to scons",
default=[], action="append")
result.add_option("-p", "--progress",
- help="The style of progress indicator (verbose, dots, color, mono)",
+ help="The style of progress indicator (verbose, dots, color, mono, tap)",
choices=PROGRESS_INDICATORS.keys(), default="mono")
result.add_option("--no-build", help="Don't build requirements",
default=True, action="store_true")