| 
				
					 | 
			2 vuotta sitten | |
|---|---|---|
| .. | ||
| lib | 2 vuotta sitten | |
| README.md | 2 vuotta sitten | |
| index.js | 2 vuotta sitten | |
| package.json | 2 vuotta sitten | |
Create function to format powerAssertContext object provided by power-assert at runtime.
var createFormatter = require('power-assert-context-formatter');
var FileRenderer = require('power-assert-renderer-file');
var AssertionRenderer = require('power-assert-renderer-assertion');
var DiagramRenderer = require('power-assert-renderer-diagram');
var ComparisonRenderer = require('power-assert-renderer-comparison');
var format = createFormatter({
    renderers: [
        FileRenderer,
        AssertionRenderer,
        DiagramRenderer,
        ComparisonRenderer
    ]
});
var assert = require('assert');
var foo = 'foo';
var bar = 'bar';
try {
    assert(foo === bar);
} catch (e) {
    var formattedText = format(e.powerAssertContext);
    . . .
}
| return type | 
|---|
function | 
Returns creator function of formatter.
| return type | 
|---|
function | 
Create format function to format powerAssertContext object provided by power-assert.
| type | default value | 
|---|---|
Array of function or Array of object | 
null | 
Array of constructor function of various Renderers.
Each Renderer is instantiated for each assertion and registered to ContextTraversal.
Each renderer accepts its options via form of object literal.
var format = createFormatter({
    renderers: [
        { ctor: FileRenderer },
        { ctor: AssertionRenderer },
        { ctor: DiagramRenderer, options: { maxDepth: 2 } },
        { ctor: ComparisonRenderer, options: { lineDiffThreshold: 3 } }
    ]
});
| type | default value | 
|---|---|
Array of function | 
empty array | 
Array of reducer function to be applied to powerAssertContext.
| type | default value | 
|---|---|
number | 
2 | 
Number of spaces inserted at the left in power-assert output.
| type | default value | 
|---|---|
string | 
"\n" | 
Line separator in power assert output.
| type | default value | 
|---|---|
boolean | 
false | 
When true, new renderers and legacy renderer implementations can be used together.
| return type | 
|---|
string | 
Format powerAssertContext into formattedText. powerAssertContext is an internal object structure, containing informations to render. Example of powerAssertContext is:
{
    source: {
        content: 'assert(foo === bar)',
        filepath: 'test/some_test.js',
        line: 1,
        ast: '### JSON representation of AST nodes ###',
        tokens: '### JSON representation of AST tokens ###',
        visitorKeys: '### JSON representation of AST visitor keys ###'
    },
    args: [
        {
            value: false,
            events: [
                {
                    value: "FOO",
                    espath: "arguments/0/left"
                },
                {
                    value: "BAR",
                    espath: "arguments/0/right"
                },
                {
                    value: false,
                    espath: "arguments/0"
                }
            ]
        }
    ]
}
$ npm install --save-dev power-assert-context-formatter
Licensed under the MIT license.