colorize tap in a way that preserves its machine-readability
var test = ;var colorize = ;test;;
or use the command-line client:
$ node test/beep.js | tap-colorize
var colorize =
var stream = colorize(opts)
Return a transform stream that adds colors to tap-specific lines. The colors are added at the end of the previous line so that the output is still machine-readable by a tap parser.
opts.pass - the color to use for
/^ok / lines
opts.fail - the color to use for
/^not ok / lines
opts.info - the color to use for comments and version lines
Colors can be a hex code starting with a
#, an array of rgb
or a color name.
You can preface a color name with
'underscore'. Use an array for a color with a string prefix if you want to
preface an rgb array color.
The ansi codes for the buffered output are placed into
stream.mode in case you
need to print out extra data before the next line comes in. This is useful for
console.log() to show up in the ordinary terminal color and then
stream.mode back for the next line of output.
Some terminals can do this with
'\x1b7' to push and
'\x1b8' to pop the
terminal context with attributes, but support for this feature is not
If there is no active mode,
There is also a command-line program in this package.
usage: tap-colorize OPTIONS Colorize TAP from INPUT, writing colorized data to OUTPUT. OPTIONS are: -i, --input Read from INPUT. Default: stdin. -o, --output Write to OUTPUT. Default: stdout. --info Color of info lines. --pass Color of /^ok / lines. --fail Color of /^not ok/ lines. -h, --help Show this help message. -v, --version Print the current version of tap-parser.
With npm, to get the module do:
npm install tap-colorize
or to get the command-line program, do:
npm install -g tap-colorize