From 7fff4499fd915bcea3fa93b1aa8b35f4fe7a6027 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Sun, 28 May 2017 00:38:50 +0200 Subject: add linting (and some initial fixes) --- node_modules/ava/lib/beautify-stack.js | 37 ++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 node_modules/ava/lib/beautify-stack.js (limited to 'node_modules/ava/lib/beautify-stack.js') diff --git a/node_modules/ava/lib/beautify-stack.js b/node_modules/ava/lib/beautify-stack.js new file mode 100644 index 000000000..189ed0714 --- /dev/null +++ b/node_modules/ava/lib/beautify-stack.js @@ -0,0 +1,37 @@ +'use strict'; +const StackUtils = require('stack-utils'); +const cleanStack = require('clean-stack'); +const debug = require('debug')('ava'); + +// Ignore unimportant stack trace lines +let ignoreStackLines = []; + +const avaInternals = /\/ava\/(?:lib\/)?[\w-]+\.js:\d+:\d+\)?$/; +const avaDependencies = /\/node_modules\/(?:bluebird|empower-core|(?:ava\/node_modules\/)?(?:babel-runtime|core-js))\//; + +if (!debug.enabled) { + ignoreStackLines = StackUtils.nodeInternals(); + ignoreStackLines.push(avaInternals); + ignoreStackLines.push(avaDependencies); +} + +const stackUtils = new StackUtils({internals: ignoreStackLines}); + +module.exports = stack => { + if (!stack) { + return ''; + } + + // Workaround for https://github.com/tapjs/stack-utils/issues/14 + // TODO: fix it in `stack-utils` + stack = cleanStack(stack); + + const title = stack.split('\n')[0]; + const lines = stackUtils + .clean(stack) + .split('\n') + .map(x => ` ${x}`) + .join('\n'); + + return `${title}\n${lines}`; +}; -- cgit v1.2.3