Power Assert output formatter.
power-assert-formatter
is a formatter module for Power Assert output.
Pull-requests, issue reports and patches are always welcomed. See power-assert project for more documentation.
See CHANGELOG
return type |
---|
function |
Returns creator function for power-assert.
return type |
---|
function |
Create formatter function with options. options
argument is optional.
type | default value |
---|---|
object |
(return value of createFormatter.defaultOptions() ) |
Configuration options. If not passed, default options will be used.
type | default value |
---|---|
number |
5 |
Threshold to show diff at character level or line level. If number of lines in target string is greater than lineDiffThreshold
, then line diff mode will be used to show diff output.
type | default value |
---|---|
number |
1 |
Depth of object traversal. If object depth is greater than maxDepth
, compound object (IOW, Array
or object
) will be pruned with #
like ["foo",#Array#,#Object#]
.
type | default value |
---|---|
number |
2 |
Number of spaces inserted at the left in power-assert output.
type | default value |
---|---|
string |
"Object" |
Type name to show when target object is created by anonymous constructor.
type | default value |
---|---|
string |
"#@Circular#" |
Name to show when target object is detected as circular structure.
type | default value |
---|---|
string |
"\n" |
Line separator in power assert output.
type | default value |
---|---|
number |
2 |
Width of 'Ambiguous' characters defined in Unicode Standard Annex #11 EAST ASIAN WIDTH. Configure options.ambiguousEastAsianCharWidth
to treat ambiguous east asian character as fullwidth (= 2
) or narrow (= 1
). Default is 2
.
type | default value |
---|---|
function |
string-width.js |
Function to calculate width of string.
type | default value |
---|---|
function |
stringifier module |
Function to stringify any target value.
type | default value |
---|---|
function |
udiff.js |
Function to create diff string between two strings.
type | default value |
---|---|
function |
string-writer.js |
Constructor Function for output writer class.
type | default value |
---|---|
Array of (string or function ) |
shown below |
[
'./built-in/file',
'./built-in/assertion',
'./built-in/diagram',
'./built-in/binary-expression'
]
Output renderers. Power assert output is rendered by renderers in order. You can create custom renderer and add its constructor function to customize power-assert-output.
[
'./built-in/file',
'./built-in/assertion',
YourCustomRenderer,
'./built-in/binary-expression'
]
Returns default options object for createFormatter function. In other words, returns
{
lineDiffThreshold: 5,
maxDepth: 1,
anonymous: 'Object',
circular: '#@Circular#',
lineSeparator: '\n',
ambiguousEastAsianCharWidth: 2,
renderers: [
'./built-in/file',
'./built-in/assertion',
'./built-in/diagram',
'./built-in/binary-expression'
]
};
return type |
---|
string |
Format powerAssertContext
into formattedText
. powerAssertContext
is an internal object structure, containing informations to render. Example of powerAssertContext
is:
{
source: {
content: "assert.equal(foo, bar)",
filepath: "/path/to/some_test.js",
line: 1
},
args: [
{
value: "foo",
events: [
{
value: "foo",
espath: "arguments/0"
}
]
},
{
value: "bar",
events: [
{
value: "bar",
espath: "arguments/1"
}
]
}
]
}
Note that structure of powerAssertContext may change.
Install
$ npm install --save-dev power-assert-formatter
powerAssertFormatter
function is exported
<script type="text/javascript" src="./path/to/node_modules/power-assert-formatter/build/power-assert-formatter.js"></script>
Install
$ bower install --save-dev power-assert-formatter
Then load (powerAssertFormatter
function is exported)
<script type="text/javascript" src="./path/to/bower_components/power-assert-formatter/build/power-assert-formatter.js"></script>
Licensed under the MIT license.