UNPKG

wix-style-react

Version:
42 lines (34 loc) 1.63 kB
'use strict'; var _pick = require('./pick'); var _pick2 = _interopRequireDefault(_pick); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('pick operator', function () { it('should return an empty object for non-object input', function () { expect((0, _pick2.default)(1, ['a'])).toEqual({}); expect((0, _pick2.default)(true, ['a'])).toEqual({}); expect((0, _pick2.default)('', ['a'])).toEqual({}); expect((0, _pick2.default)(null, ['a'])).toEqual({}); expect((0, _pick2.default)(undefined, ['a'])).toEqual({}); expect((0, _pick2.default)(Symbol.for('foo'), ['a'])).toEqual({}); }); it('should return an empty object for invalid paths', function () { expect((0, _pick2.default)({ a: 1 }, {})).toEqual({}); expect((0, _pick2.default)({ a: 1 }, 1)).toEqual({}); expect((0, _pick2.default)({ a: 1 }, true)).toEqual({}); expect((0, _pick2.default)({ a: 1 }, undefined)).toEqual({}); expect((0, _pick2.default)({ a: 1 }, null)).toEqual({}); expect((0, _pick2.default)({ a: 1 }, Symbol.for('foo'))).toEqual({}); }); it('should pick a single field', function () { var anObject = { a: 1, b: 2 }; expect((0, _pick2.default)(anObject, 'a')).toEqual({ a: 1 }); }); it('should pick multiple fields', function () { var anObject = { a: 1, b: 2, c: 3 }; expect((0, _pick2.default)(anObject, ['a', 'c'])).toEqual({ a: 1, c: 3 }); }); it('should ignore missing paths', function () { var anObject = { a: 1, b: 2 }; expect((0, _pick2.default)(anObject, ['a', 'z'])).toEqual({ a: 1 }); }); });