Cleanup _.defaultTo.

This commit is contained in:
John-David Dalton
2016-05-25 08:41:51 -07:00
parent 5fbc5303ff
commit 6e67ebab05
4 changed files with 33 additions and 58 deletions

View File

@@ -836,34 +836,11 @@
QUnit.module('fp.defaultTo');
(function() {
QUnit.test('should return a default value if input is undefined', function(assert) {
assert.expect(4);
// default (inverse params)
var actual = fp.defaultTo(0, fp.find(function(a) { return a > 1; }, [1,2,3]));
assert.deepEqual(actual, 2);
var actual = fp.defaultTo(0, fp.find(function(a) { return a > 5; }, [1,2,3]));
assert.deepEqual(actual, 0);
// curried
var actual = fp.defaultTo(0)(fp.find(function(a) { return a > 1; })([1,2,3]));
assert.deepEqual(actual, 2);
var actual = fp.defaultTo(0)(fp.find(function(a) { return a > 5; })([1,2,3]));
assert.deepEqual(actual, 0);
});
QUnit.test('should work in a flow', function(assert) {
QUnit.test('should have an argument order of `defaultValue` then `value`', function(assert) {
assert.expect(2);
var actual = fp.flow([
fp.find(function(a) { return a > 3 }),
fp.defaultTo(0)
]);
assert.deepEqual(actual([1,2,3]), 0);
assert.deepEqual(actual([3,4,5]), 4);
assert.strictEqual(fp.defaultTo(1)(0), 0);
assert.strictEqual(fp.defaultTo(1)(undefined), 1);
});
}());