sharyn
Version:
Combines all the other packages under one.
18 lines (14 loc) • 653 B
JavaScript
;
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
var _curryOptional = _interopRequireDefault(require("./curry-optional"));
// a, b, and c are optional, d is required
var fn = function fn(a, b, c, d) {
return [a, b, c, d];
};
var fnCur = (0, _curryOptional.default)(fn, 3);
test('curryOptional', function () {
expect(fnCur('a', 'b', 'c')('d')).toEqual(['a', 'b', 'c', 'd']);
expect(fnCur('a', 'b')('d')).toEqual(['a', 'b', undefined, 'd']);
expect(fnCur('a')('d')).toEqual(['a', undefined, undefined, 'd']);
expect(fnCur()('d')).toEqual([undefined, undefined, undefined, 'd']);
});