UNPKG

fluentnode

Version:

Fluent apis for node (based on the concepts used in C#'s FluentSharp

186 lines (181 loc) 7.67 kB
// Generated by CoffeeScript 1.12.7 (function() { var expect; require('../../src/fluentnode'); expect = require('chai').expect; describe('| js-native | Array', function() { it('add', function() { var a; [].add.assert_Is_Function(); [].add('a').assert_Is(['a']); ['a'].add('b').assert_Is(['a', 'b']); ['a'].add('b', 'c').assert_Is(['a', 'b', 'c']); ['a', 'b'].add('c', 'd').assert_Is(['a', 'b', 'c', 'd']); ['1', '1'].add(1, 2, 3, 4).assert_Is(['1', '1', 1, 2, 3, 4]); a = []; a.add('1'); a.assert_Is(['1']); a.add('2', '3'); a.assert_Is(['1', '2', '3']); a.add(4).add(5, 6); a.assert_Is(['1', '2', '3', 4, 5, 6]); return [].add(null).assert_Is([null]).add(void 0).assert_Is([null, void 0]).add(1).assert_Is([null, void 0, 1]).add('a').assert_Is([null, void 0, 1, 'a']).add([1, 2]).assert_Is([null, void 0, 1, 'a', [1, 2]]); }); it('contains', function() { [].contains.assert_Is_Function(); [].contains().assert_Is_False(); [].contains('').assert_Is_False(); [''].contains('').assert_Is_True(); [''].contains().assert_Is_False(); ['1'].contains('1').assert_Is_True(); ['1'].contains('2').assert_Is_False(); ['1', '2'].contains('1').assert_Is_True(); ['1', '2'].contains('2').assert_Is_True(); ['1', '2'].contains('3').assert_Is_False(); ['1', '2'].contains(['5']).assert_Is_False(); ['1', '2'].contains(['5', '1']).assert_Is_False(); ['1', '2'].contains(['1']).assert_Is_True(); ['1', '2'].contains(['2']).assert_Is_True(); ['1', '2'].contains(['1', '1']).assert_Is_True(); return ['1', '2'].contains(['2', '1']).assert_Is_True(); }); it('duplicates', function() { ['1', '2', 3, 4].duplicates().assert_Is([]); ['1', '2', 3, 3].duplicates().assert_Is([3]); ['1', '3', 3, 3].duplicates().assert_Is([3]); ['3', '3', 3, 3].duplicates().assert_Is(['3', 3]); ['3', 3, 3, 3].duplicates().assert_Is([3]); return ['3', null, null].duplicates().assert_Is([null]); }); it('empty', function() { expect([].empty).to.be.an('Function'); expect([].empty()).to.be["true"]; expect([''].empty()).to.be["false"]; return expect([null].empty()).to.be["false"]; }); it('first', function() { expect([].first).to.be.an('Function'); expect([].first()).to.equal(null); expect([''].first()).to.equal(''); expect(['123'].first()).to.equal('123'); expect(['123', 'abc'].first()).to.equal('123'); return expect([null, 'abc'].first()).to.equal(null); }); it('fourth', function() { expect([].fourth).to.be.an('Function'); expect([].fourth()).to.equal(null); return expect(['1', '2', '3', '4'].fourth()).to.equal('4'); }); it('item', function() { [0, 1].item(0).assert_Is(0); [0, 1].item(1).assert_Is(1); assert_Is_Null([0, 1].item(2)); assert_Is_Null([0, 1].item(-1)); assert_Is_Null([0, 1].item(9999)); assert_Is_Null([0, 1].item(null)); return assert_Is_Null([0, 1].item(false)); }); it('last', function() { expect([].last).to.be.an('Function'); expect([].last()).to.equal(null); expect([''].last()).to.equal(''); expect(['123'].last()).to.equal('123'); expect(['123', 'abc'].last()).to.equal('abc'); return expect(['123', null].last()).to.equal(null); }); it('not_Contains', function() { [].not_Contains.assert_Is_Function(); [].not_Contains().assert_Is_True(); [].not_Contains('').assert_Is_True(); [''].not_Contains('').assert_Is_False(); [''].not_Contains().assert_Is_True(); ['1'].not_Contains('1').assert_Is_False(); ['1'].not_Contains('2').assert_Is_True(); ['1', '2'].not_Contains('1').assert_Is_False(); ['1', '2'].not_Contains('2').assert_Is_False(); return ['1', '2'].not_Contains('3').assert_Is_True(); }); it('not_Empty', function() { [].not_Empty.assert_Is_Function(); [].not_Empty().assert_Is_False(); [''].not_Empty().assert_Is_True(); return [null].not_Empty().assert_Is_True(); }); it('log', function() {}); it('nth', function() { return [].nth.assert_Is([].item); }); it('remove_At', function() { [0, 1, 2, 3, 4].remove_At(0).assert_Is([1, 2, 3, 4]); [0, 1, 2, 3, 4].remove_At(1).assert_Is([0, 2, 3, 4]); [0, 1, 2, 3, 4].remove_At(2).assert_Is([0, 1, 3, 4]); return [0, 1, 2, 3, 4].remove_At(4).assert_Is([0, 1, 2, 3]); }); it('remove_First', function() { [0, 1, 2, 3, 4].remove_First().assert_Is([1, 2, 3, 4]); [1, 2, 3, 4].remove_First().assert_Is([2, 3, 4]); [2, 3, 4].remove_First().assert_Is([3, 4]); return [3, 4].remove_First().assert_Is([4]); }); it('remove_If_Contains', function() { ['0', 0, 1, 2, 3, 4].remove_If_Contains('0').assert_Is([1, 2, 3, 4]); ['0', 1, 2, 3, 4].remove_If_Contains(1).assert_Is(['0', 2, 3, 4]); ['0', '12', '34'].remove_If_Contains('2').assert_Is(['0', '34']); ['0', '14', '34'].remove_If_Contains('4').assert_Is(['0']); return ['0', 0, 1, 2, 3, 4].remove_If_Contains(null).assert_Is(['0', 0, 1, 2, 3, 4]); }); it('second', function() { expect([].second).to.be.an('Function'); expect([].second()).to.equal(null); expect([''].second()).to.equal(null); expect(['123'].second()).to.equal(null); expect(['123', 'abc'].second()).to.equal('abc'); return expect(['123', null].second()).to.equal(null); }); it('size', function() { expect([].size).to.be.an('Function'); expect([].size()).to.equal(0); expect([''].size()).to.equal(1); expect(['123'].size()).to.equal(1); expect(['123', 'abc'].size()).to.equal(2); return expect(['123', null].size()).to.equal(2); }); it('starts_With', function() { [].starts_With.assert_Is_Function(); [].starts_With().assert_Is_Equal_To([]); [''].starts_With('').assert_Is_Equal_To([]); [' '].starts_With(' ').assert_Is_Equal_To([' ']); ['1', '23', '2'].starts_With('1').assert_Is_Equal_To(['1']); ['1', '23', '2'].starts_With('2').assert_Is_Equal_To(['23', '2']); return ['1', '23', '2'].starts_With('4').assert_Is_Equal_To([]); }); it('third', function() { expect([].third).to.be.an('Function'); expect([].third()).to.equal(null); return expect(['1', '2', '3', '4'].third()).to.equal('3'); }); it('take', function() { [].take.assert_Is_Function(); [].take().assert_Is_Equal_To([]); [''].take(0).assert_Is_Equal_To([]); [' '].take(1).assert_Is_Equal_To([' ']); ['1', '23', '2'].take(1).assert_Is_Equal_To(['1']); ['1', '23', '2'].take(2).assert_Is_Equal_To(['1', '23']); ['1', '23', '2'].take(0).assert_Is_Equal_To([]); ['1', '23'].take(9999).assert_Is_Equal_To(['1', '23']); ['1', '23'].take(-1).assert_Is_Equal_To(['1', '23']); ['1', '23'].take(-2).assert_Is_Equal_To([]); ['1', '23'].take(null).assert_Is_Equal_To([]); return ['1', '23'].take('a').assert_Is_Equal_To([]); }); return it('unique', function() { [].unique.assert_Is_Function(); [].unique().assert_Is_Equal_To([]); [''].unique().assert_Is_Equal_To(['']); ['1'].unique().assert_Is_Equal_To(['1']); ['1', '2'].unique().assert_Is_Equal_To(['1', '2']); ['1', '1'].unique().assert_Is_Equal_To(['1']); return ['1', '2', '1'].unique().assert_Is_Equal_To(['1', '2']); }); }); }).call(this);