Ensure orderBy will accept iteratee path arrays #4438 (#4513)

This commit is contained in:
Michał Lipiński
2019-10-17 11:23:07 +02:00
parent 23b2a33e75
commit 619ac69746
2 changed files with 3 additions and 3 deletions

View File

@@ -19,7 +19,7 @@ function baseOrderBy(collection, iteratees, orders) {
if (iteratees.length) { if (iteratees.length) {
iteratees = iteratees.map((iteratee) => { iteratees = iteratees.map((iteratee) => {
if (Array.isArray(iteratee)) { if (Array.isArray(iteratee)) {
return (value) => baseGet(value, iteratee) return (value) => baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee)
} }
return iteratee return iteratee

View File

@@ -28,10 +28,10 @@ describe('orderBy', function() {
it('should sort by nested key in array format', () => { it('should sort by nested key in array format', () => {
var actual = orderBy( var actual = orderBy(
nestedObj, nestedObj,
[['address','zipCode'], ['address.streetName']], [['address', 'zipCode'], ['address.streetName']],
['asc', 'desc'], ['asc', 'desc'],
); );
assert.deepStrictEqual(actual, [nestedObj[2], nestedObj[3], nestedObj[0], nestedObj[1]], nestedObj[4]); assert.deepStrictEqual(actual, [nestedObj[2], nestedObj[3], nestedObj[1], nestedObj[0], nestedObj[4]]);
}); });
it('should sort by multiple properties by specified orders', function() { it('should sort by multiple properties by specified orders', function() {