aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmey Sakhadeo <me@ameyms.com>2013-09-12 11:18:36 -0500
committerTimmy Willison <timmywillisn@gmail.com>2013-09-12 11:19:38 -0500
commit18099d52d831609bf63d1140a0dc63b5bd117f5e (patch)
tree6396855a3f712478dc297ad505266a61913fcdf7
parentdab011e26d23e3751ffc9b391e6a404720b44649 (diff)
downloadjquery-18099d52d831609bf63d1140a0dc63b5bd117f5e.tar.gz
jquery-18099d52d831609bf63d1140a0dc63b5bd117f5e.zip
Add unit tests for jQuery.grep. Close gh-1345.
-rw-r--r--test/unit/core.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/unit/core.js b/test/unit/core.js
index f00907427..5677ddc3d 100644
--- a/test/unit/core.js
+++ b/test/unit/core.js
@@ -964,6 +964,26 @@ test("jQuery.merge()", function() {
);
});
+test("jQuery.grep()", function() {
+ expect(8);
+
+ var searchCriterion = function( value ) {
+ return value % 2 === 0;
+ };
+
+ deepEqual( jQuery.grep( [], searchCriterion ), [], "Empty array" );
+ deepEqual( jQuery.grep( new Array(4), searchCriterion ), [], "Sparse array" );
+
+ deepEqual( jQuery.grep( [ 1, 2, 3, 4, 5, 6 ], searchCriterion ), [ 2, 4, 6 ], "Satisfying elements present" );
+ deepEqual( jQuery.grep( [ 1, 3, 5, 7], searchCriterion ), [], "Satisfying elements absent" );
+
+ deepEqual( jQuery.grep( [ 1, 2, 3, 4, 5, 6 ], searchCriterion, true ), [ 1, 3, 5 ], "Satisfying elements present and grep inverted" );
+ deepEqual( jQuery.grep( [ 1, 3, 5, 7], searchCriterion, true ), [1, 3, 5, 7], "Satisfying elements absent and grep inverted" );
+
+ deepEqual( jQuery.grep( [ 1, 2, 3, 4, 5, 6 ], searchCriterion, false ), [ 2, 4, 6 ], "Satisfying elements present but grep explicitly uninverted" );
+ deepEqual( jQuery.grep( [ 1, 3, 5, 7 ], searchCriterion, false ), [], "Satisfying elements absent and grep explicitly uninverted" );
+});
+
test("jQuery.extend(Object, Object)", function() {
expect(28);