UNPKG

rubico

Version:

[a]synchronous functional programming

22 lines (16 loc) 593 B
const assert = require('assert') const when = require('./when') const isEven = num => num % 2 === 0 describe('when', () => { it('happy path', async () => { const doubleIfEven = when(isEven, num => num * 2) assert.strictEqual(doubleIfEven(100), 200) assert.strictEqual(doubleIfEven(101), 101) }) it('async happy path', async () => { const asyncIsEven = async num => num % 2 == 0 const asyncDoubleIfEven = when(asyncIsEven, num => num * 2) assert.strictEqual(await asyncDoubleIfEven(100), 200) assert.strictEqual(await asyncDoubleIfEven(101), 101) }) })