init
This commit is contained in:
50
node_modules/assertion-error-formatter/lib/helpers/canonicalize.js
generated
vendored
Normal file
50
node_modules/assertion-error-formatter/lib/helpers/canonicalize.js
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default =
|
||||
|
||||
|
||||
canonicalize;var _has_property = require('./has_property');var _has_property2 = _interopRequireDefault(_has_property);var _type = require('./type');var _type2 = _interopRequireDefault(_type);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function canonicalize(value, stack) {
|
||||
stack = stack || [];
|
||||
|
||||
function withStack(fn) {
|
||||
stack.push(value);
|
||||
var result = fn();
|
||||
stack.pop();
|
||||
return result;
|
||||
}
|
||||
|
||||
if (stack.indexOf(value) !== -1) {
|
||||
return '[Circular]';
|
||||
}
|
||||
|
||||
switch ((0, _type2.default)(value)) {
|
||||
case 'array':
|
||||
return withStack(function () {
|
||||
return value.map(function (item) {
|
||||
return canonicalize(item, stack);
|
||||
});
|
||||
});
|
||||
case 'function':
|
||||
if (!(0, _has_property2.default)(value)) {
|
||||
return '[Function]';
|
||||
}
|
||||
/* falls through */
|
||||
case 'object':
|
||||
return withStack(function () {
|
||||
var canonicalizedObj = {};
|
||||
Object.keys(value).sort().map(function (key) {
|
||||
canonicalizedObj[key] = canonicalize(value[key], stack);
|
||||
});
|
||||
return canonicalizedObj;
|
||||
});
|
||||
case 'boolean':
|
||||
case 'buffer':
|
||||
case 'date':
|
||||
case 'null':
|
||||
case 'number':
|
||||
case 'regexp':
|
||||
case 'symbol':
|
||||
case 'undefined':
|
||||
return value;
|
||||
default:
|
||||
return value.toString();}
|
||||
|
||||
}
|
8
node_modules/assertion-error-formatter/lib/helpers/has_property.js
generated
vendored
Normal file
8
node_modules/assertion-error-formatter/lib/helpers/has_property.js
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = hasProperty;function hasProperty(obj) {
|
||||
for (var prop in obj) {
|
||||
if (Object.prototype.hasOwnProperty.call(obj, prop)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
40
node_modules/assertion-error-formatter/lib/helpers/inline_diff.js
generated
vendored
Normal file
40
node_modules/assertion-error-formatter/lib/helpers/inline_diff.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default =
|
||||
|
||||
|
||||
|
||||
inlineDiff;var _diff = require('diff');var _padRight = require('pad-right');var _padRight2 = _interopRequireDefault(_padRight);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function inlineDiff(actual, expected, colorFns) {
|
||||
var msg = errorDiff(actual, expected, colorFns);
|
||||
|
||||
// linenos
|
||||
var lines = msg.split('\n');
|
||||
if (lines.length > 4) {(function () {
|
||||
var width = String(lines.length).length;
|
||||
msg = lines.map(function (str, i) {
|
||||
return (0, _padRight2.default)(i + 1, width, ' ') + '|' + ' ' + str;
|
||||
}).join('\n');})();
|
||||
}
|
||||
|
||||
// legend
|
||||
msg = '\n ' +
|
||||
colorFns.diffRemoved('actual') +
|
||||
' ' +
|
||||
colorFns.diffAdded('expected') +
|
||||
'\n\n' +
|
||||
msg.replace(/^/gm, ' ') +
|
||||
'\n';
|
||||
|
||||
return msg;
|
||||
}
|
||||
|
||||
|
||||
function errorDiff(actual, expected, colorFns) {
|
||||
return (0, _diff.diffWordsWithSpace)(actual, expected).map(function (str) {
|
||||
if (str.added) {
|
||||
return colorFns.diffAdded(str.value);
|
||||
}
|
||||
if (str.removed) {
|
||||
return colorFns.diffRemoved(str.value);
|
||||
}
|
||||
return str.value;
|
||||
}).join('');
|
||||
}
|
79
node_modules/assertion-error-formatter/lib/helpers/json_stringify.js
generated
vendored
Normal file
79
node_modules/assertion-error-formatter/lib/helpers/json_stringify.js
generated
vendored
Normal file
@@ -0,0 +1,79 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default =
|
||||
|
||||
|
||||
|
||||
jsonStringify;var _repeatString = require('repeat-string');var _repeatString2 = _interopRequireDefault(_repeatString);var _type = require('./type');var _type2 = _interopRequireDefault(_type);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function jsonStringify(object, depth) {
|
||||
depth = depth || 1;
|
||||
|
||||
switch ((0, _type2.default)(object)) {
|
||||
case 'boolean':
|
||||
case 'regexp':
|
||||
case 'symbol':
|
||||
return object.toString();
|
||||
case 'null':
|
||||
case 'undefined':
|
||||
return '[' + object + ']';
|
||||
case 'array':
|
||||
case 'object':
|
||||
return jsonStringifyProperties(object, depth);
|
||||
case 'number':
|
||||
if (object === 0 && 1 / object === -Infinity) {
|
||||
return '-0';
|
||||
} else {
|
||||
return object.toString();
|
||||
}
|
||||
case 'date':
|
||||
return jsonStringifyDate(object);
|
||||
case 'buffer':
|
||||
return jsonStringifyBuffer(object, depth);
|
||||
default:
|
||||
if (object === '[Function]' || object === '[Circular]') {
|
||||
return object;
|
||||
} else {
|
||||
return JSON.stringify(object); // string
|
||||
}}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function jsonStringifyBuffer(object, depth) {var _object$toJSON =
|
||||
object.toJSON(),data = _object$toJSON.data;
|
||||
return '[Buffer: ' + jsonStringify(data, depth) + ']';
|
||||
}
|
||||
|
||||
|
||||
function jsonStringifyDate(object) {
|
||||
var str = void 0;
|
||||
if (isNaN(object.getTime())) {
|
||||
str = object.toString();
|
||||
} else {
|
||||
str = object.toISOString();
|
||||
}
|
||||
return '[Date: ' + str + ']';
|
||||
}
|
||||
|
||||
|
||||
function jsonStringifyProperties(object, depth) {
|
||||
var space = 2 * depth;
|
||||
var start = (0, _type2.default)(object) === 'array' ? '[' : '{';
|
||||
var end = (0, _type2.default)(object) === 'array' ? ']' : '}';
|
||||
var length = typeof object.length === 'number' ? object.length : Object.keys(object).length;
|
||||
var addedProperties = 0;
|
||||
var str = start;
|
||||
|
||||
for (var prop in object) {
|
||||
if (Object.prototype.hasOwnProperty.call(object, prop)) {
|
||||
addedProperties += 1;
|
||||
str += '\n' + (0, _repeatString2.default)(' ', space) + (
|
||||
(0, _type2.default)(object) === 'array' ? '' : '"' + prop + '": ') +
|
||||
jsonStringify(object[prop], depth + 1) + (
|
||||
addedProperties === length ? '' : ',');
|
||||
}
|
||||
}
|
||||
|
||||
if (str.length !== 1) {
|
||||
str += '\n' + (0, _repeatString2.default)(' ', space - 2);
|
||||
}
|
||||
|
||||
return str + end;
|
||||
}
|
7
node_modules/assertion-error-formatter/lib/helpers/stringify.js
generated
vendored
Normal file
7
node_modules/assertion-error-formatter/lib/helpers/stringify.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default =
|
||||
|
||||
|
||||
|
||||
stringify;var _canonicalize = require('./canonicalize');var _canonicalize2 = _interopRequireDefault(_canonicalize);var _json_stringify = require('./json_stringify');var _json_stringify2 = _interopRequireDefault(_json_stringify);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function stringify(value) {
|
||||
return (0, _json_stringify2.default)((0, _canonicalize2.default)(value)).replace(/,(\n|$)/g, '$1');
|
||||
}
|
12
node_modules/assertion-error-formatter/lib/helpers/type.js
generated
vendored
Normal file
12
node_modules/assertion-error-formatter/lib/helpers/type.js
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default = type;function type(value) {
|
||||
if (value === undefined) {
|
||||
return 'undefined';
|
||||
} else if (value === null) {
|
||||
return 'null';
|
||||
} else if (typeof Buffer !== 'undefined' && Buffer.isBuffer(value)) {
|
||||
return 'buffer';
|
||||
}
|
||||
return Object.prototype.toString.call(value).
|
||||
replace(/^\[.+\s(.+?)\]$/, '$1').
|
||||
toLowerCase();
|
||||
}
|
33
node_modules/assertion-error-formatter/lib/helpers/unified_diff.js
generated
vendored
Normal file
33
node_modules/assertion-error-formatter/lib/helpers/unified_diff.js
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
'use strict';Object.defineProperty(exports, "__esModule", { value: true });exports.default =
|
||||
|
||||
unifiedDiff;var _diff = require('diff');function unifiedDiff(actual, expected, colorFns) {
|
||||
var indent = ' ';
|
||||
function cleanUp(line) {
|
||||
if (line.length === 0) {
|
||||
return '';
|
||||
}
|
||||
if (line[0] === '+') {
|
||||
return indent + colorFns.diffAdded(line);
|
||||
}
|
||||
if (line[0] === '-') {
|
||||
return indent + colorFns.diffRemoved(line);
|
||||
}
|
||||
if (line.match(/\@\@/)) {
|
||||
return null;
|
||||
}
|
||||
if (line.match(/\\ No newline/)) {
|
||||
return null;
|
||||
}
|
||||
return indent + line;
|
||||
}
|
||||
function notBlank(line) {
|
||||
return typeof line !== 'undefined' && line !== null;
|
||||
}
|
||||
var msg = (0, _diff.createPatch)('string', actual, expected);
|
||||
var lines = msg.split('\n').splice(4);
|
||||
return '\n' + indent +
|
||||
colorFns.diffAdded('+ expected') + ' ' +
|
||||
colorFns.diffRemoved('- actual') +
|
||||
'\n\n' +
|
||||
lines.map(cleanUp).filter(notBlank).join('\n');
|
||||
}
|
Reference in New Issue
Block a user