forked from Gozala/reducers
/
take.js
30 lines (22 loc) · 889 Bytes
/
take.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/* vim:set ts=2 sw=2 sts=2 expandtab */
/*jshint asi: true undef: true es5: true node: true browser: true devel: true
forin: true latedef: false globalstrict: true*/
'use strict';
var take = require('../core').take
var into = require('../accumulator').into
exports['test take'] = function(assert) {
var actual = take([ 1, 2, 3, 4 ], 2)
assert.deepEqual(into(actual), [ 1, 2 ], 'picked two items')
assert.deepEqual(into(actual), [ 1, 2 ], 'can be re-reduced same')
}
exports['test take none'] = function(assert) {
var actual = take([ 1, 2, 3, 4 ], 0)
assert.deepEqual(into(actual), [], 'picks none on 0')
}
exports['test take all'] = function(assert) {
var actual = take([ 1, 2, 3, 4 ], 100)
assert.deepEqual(into(actual), [ 1, 2, 3, 4 ],
'picks all if has less than requested')
}
if (module == require.main)
require('test').run(exports)