Merge pull request #2 from jasonkarns/npm Support npm
bats-core is a supporting library providing common functions to test helper libraries written for Bats.
Features:
See the shared documentation to learn how to install and load this library.
If you want to use this library in your own helpers or just want to learn about its internals see the developer documentation in the source files.
Many test helpers need to produce human readable output. This library provides a simple way to format simple messages and key value pairs, and display them on the standard error.
Simple messages without structure, e.g. one-line error messages, are simply wrapped in a header and a footer to help them stand out.
-- ERROR: assert_output -- `--partial' and `--regexp' are mutually exclusive --
Some helpers, e.g. assertions, structure output as key-value pairs. This library provides two ways to format them.
When the value is one line long, a pair can be displayed in a columnar fashion called two-column format.
-- output differs -- expected : want actual : have --
When the value is longer than one line, the key and value must be displayed on separate lines. First, the key is displayed along with the number of lines in the value. Then, the value, indented by two spaces for added readability, starting on the next line. This is called multi-line format.
-- command failed -- status : 1 output (2 lines): Error! Something went terribly wrong! Our engineers are panicing... \`>`;/ --
Sometimes, for clarity, it is a good idea to display related values also in this format, even if they are just one line long.
-- output differs -- expected (1 lines): want actual (3 lines): have 1 have 2 have 3 --