developertrinidad08 7e6cf29479 first commit
2023-01-16 18:11:14 -03:00

43 lines
1.2 KiB
JavaScript

var stylize = require('../vows/console').stylize;
var inspect = require('../vows/console').inspect;
require('assert').AssertionError.prototype.toString = function () {
var that = this,
source;
if (this.stack) {
source = this.stack.match(/([a-zA-Z0-9._-]+\.(?:js|coffee))(:\d+):\d+/);
}
function parse(str) {
var actual = inspect(that.actual, {showHidden: that.actual instanceof Error}),
expected;
if (that.expected instanceof Function) {
expected = that.expected.name;
}
else {
expected = inspect(that.expected, {showHidden: that.actual instanceof Error});
}
return str.replace(/{actual}/g, actual).
replace(/{operator}/g, stylize(that.operator, 'bold')).
replace(/{expected}/g, expected);
}
if (this.message) {
var msg = stylize(parse(this.message), 'yellow');
if (source) {
msg += stylize(' // ' + source[1] + source[2], 'grey');
}
return msg;
} else {
return stylize([
this.expected,
this.operator,
this.actual
].join(' '), 'yellow');
}
};