/*!
* Chai - compareByInspect utility * Copyright(c) 2011-2016 Jake Luer <jake@alogicalparadox.com> * MIT Licensed */
/*!
* Module dependencies */
var inspect = require('./inspect');
/**
* ### .compareByInspect(mixed, mixed) * * To be used as a compareFunction with Array.prototype.sort. Compares elements * using inspect instead of default behavior of using toString so that Symbols * and objects with irregular/missing toString can still be sorted without a * TypeError. * * @param {Mixed} first element to compare * @param {Mixed} second element to compare * @returns {Number} -1 if 'a' should come before 'b'; otherwise 1 * @name compareByInspect * @namespace Utils * @api public */
module.exports = function compareByInspect(a, b) {
return inspect(a) < inspect(b) ? -1 : 1;
};