]> source.dussan.org Git - jquery.git/commitdiff
Add unit tests for jQuery.grep. Close gh-1345.
authorAmey Sakhadeo <me@ameyms.com>
Thu, 12 Sep 2013 16:18:36 +0000 (11:18 -0500)
committerTimmy Willison <timmywillisn@gmail.com>
Thu, 12 Sep 2013 16:23:21 +0000 (11:23 -0500)
test/unit/core.js

index cdc4c65287d119cf5d1b3ef9792d8d53614313fd..6e4de4864033a58a0d8fb63eeb214870ff8f0b7c 100644 (file)
@@ -967,6 +967,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);