Ensure _.sortByAll iteratee call guard works when _.partialRight is applied.

This commit is contained in:
John-David Dalton
2015-01-13 01:37:15 -08:00
committed by jdalton
parent c0110c6bab
commit aca07530aa
2 changed files with 9 additions and 3 deletions

View File

@@ -6541,7 +6541,7 @@
*/
function sortByAll(collection) {
var args = arguments;
if (args.length == 4 && isIterateeCall(args[1], args[2], args[3])) {
if (args.length > 3 && isIterateeCall(args[1], args[2], args[3])) {
args = [collection, args[1]];
}
var index = -1,

View File

@@ -11809,8 +11809,14 @@
{ 'a': 'y', '0': 2 }
];
var actual = _.reduce([['a']], _.sortByAll, objects);
deepEqual(actual, [objects[0], objects[2], objects[1], objects[3]]);
var funcs = [_.sortByAll, _.partialRight(_.sortByAll, 'bogus')],
expected = _.map(funcs, _.constant([objects[0], objects[2], objects[1], objects[3]]));
var actual = _.map(funcs, function(func) {
return _.reduce([['a']], func, objects);
});
deepEqual(actual, expected);
});
}());