From 3a6b32f5b976a45583824cf1bbd4da29058a579f Mon Sep 17 00:00:00 2001 From: Jeremy Ashkenas Date: Sat, 6 Jul 2013 16:42:25 +0200 Subject: [PATCH] Add a two-part tests for chaining, plus lint. --- test/chaining.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/test/chaining.js b/test/chaining.js index 16cf7bf57..6eeef0f87 100644 --- a/test/chaining.js +++ b/test/chaining.js @@ -17,15 +17,15 @@ $(document).ready(function() { hash[l]++; return hash; }, {}).value(); - ok(counts['a'] == 16 && counts['e'] == 10, 'counted all the letters in the song'); + ok(counts.a == 16 && counts.e == 10, 'counted all the letters in the song'); }); test("select/reject/sortBy", function() { var numbers = [1,2,3,4,5,6,7,8,9,10]; numbers = _(numbers).chain().select(function(n) { - return n % 2 == 0; + return n % 2 === 0; }).reject(function(n) { - return n % 4 == 0; + return n % 4 === 0; }).sortBy(function(n) { return -n; }).value(); @@ -35,9 +35,9 @@ $(document).ready(function() { test("select/reject/sortBy in functional style", function() { var numbers = [1,2,3,4,5,6,7,8,9,10]; numbers = _.chain(numbers).select(function(n) { - return n % 2 == 0; + return n % 2 === 0; }).reject(function(n) { - return n % 4 == 0; + return n % 4 === 0; }).sortBy(function(n) { return -n; }).value(); @@ -56,4 +56,10 @@ $(document).ready(function() { equal(numbers.join(', '), "34, 10, 8, 6, 4, 2, 10, 10", 'can chain together array functions.'); }); + test("chaining works in small stages", function() { + var o = _([1, 2, 3, 4]).chain(); + deepEqual(o.filter(function(i) { return i < 3; }).value(), [1, 2]); + deepEqual(o.filter(function(i) { return i > 2; }).value(), [3, 4]); + }); + });