Ensure _.pick supports path arrays. [closes #2809]

This commit is contained in:
John-David Dalton
2016-11-14 01:06:35 -08:00
parent 102c5f00d7
commit ce093845e1
2 changed files with 11 additions and 2 deletions

View File

@@ -13529,7 +13529,7 @@
* // => { 'a': 1, 'c': 3 } * // => { 'a': 1, 'c': 3 }
*/ */
var pick = flatRest(function(object, paths) { var pick = flatRest(function(object, paths) {
return object == null ? {} : basePick(object, arrayMap(paths, toKey)); return object == null ? {} : basePick(object, paths);
}); });
/** /**

View File

@@ -17597,6 +17597,15 @@
assert.deepEqual(_.pick(nested, 'b.c'), { 'b': { 'c': 2 } }); assert.deepEqual(_.pick(nested, 'b.c'), { 'b': { 'c': 2 } });
}); });
QUnit.test('should support path arrays', function(assert) {
assert.expect(1);
var object = { 'a.b.c': 1 },
actual = _.pick(object, [['a.b.c']]);
assert.deepEqual(actual, { 'a.b.c': 1 });
});
QUnit.test('should coerce property names to strings', function(assert) { QUnit.test('should coerce property names to strings', function(assert) {
assert.expect(1); assert.expect(1);
@@ -23585,7 +23594,7 @@
}); });
}); });
QUnit.test('should a new path array', function(assert) { QUnit.test('should return new path array', function(assert) {
assert.expect(1); assert.expect(1);
assert.notStrictEqual(_.toPath('a.b.c'), _.toPath('a.b.c')); assert.notStrictEqual(_.toPath('a.b.c'), _.toPath('a.b.c'));