tape-player v0.1.1
tape-player
A simple, terse, in-process reporter for the
tapetest harness for Node.js.
But why tho?
The Test Anything Protocol (TAP) used by many test
harnesses is versatile, but it's not much to look at - or rather, it's too
much to look at. There are
many custom formatters
that work with the tape test harness, but
most work by
piping process output. This is
a useful technique, but interferes with the
exit status of the test harness
which is a problem in scripts that are meant to fail when tests fail (like
npm test). (Though there are
workarounds
for this, they are shell- and platform-specific.)
Fortunately, tape offers an alternative logging mechanism via its
createStream API.
This technique is easy to use and runs in-process so it doesn't interfere with
the exit status of the test harness. tape-player takes advantage of this to
produce a concise test log that's easy to enable.
Hook me up!
Install tape-player via:
npm install tape-player --save-devAnd add it to one or more tape-based test files via:
require("tape-player")
// Ignore return valueThat's it - run those tests and you'll see nicely formatted output on the standard output device!
tape-player works with the tape CLI or directly in tape-based files (as
with node test-file.js).
Show me what you got...
Example output:
passing test
failing test
/home/user/project/test/example.js:15:8
Message: oops
Operator: fail
passing test
Tests: 3
Asserts: 5
Failures: 1