UNPKG

tsoid

Version:

Typed functional library to deal with async operations.

25 lines (24 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const curry_1 = require("../curry"); const uncurry_1 = require("../uncurry"); describe('uncurry', () => { it('Curried and uncurried functions should return the same value', () => { const sum = (a, b) => a + b; const curriedSum = curry_1.default(sum); const uncurriedSum = uncurry_1.default(curriedSum); expect(curriedSum(1)(2)).toBe(uncurriedSum(1, 2)); }); it('Uncurry to 3-arity function', () => { const sum = (a, b, c) => a + b + c; const curriedSum = curry_1.curry3(sum); const uncurriedSum = uncurry_1.uncurry3(curriedSum); expect(curriedSum(1)(2)(3)).toBe(uncurriedSum(1, 2, 3)); }); it('Uncurry to 4-arity function', () => { const sum = (a, b, c, d) => a + b + c + d; const curriedSum = curry_1.curry4(sum); const uncurriedSum = uncurry_1.uncurry4(curriedSum); expect(curriedSum(1)(2)(3)(4)).toBe(uncurriedSum(1, 2, 3, 4)); }); });