]> source.dussan.org Git - jquery.git/commitdiff
Fix #13819: .parent sort direction
authorRichard Gibson <richard.gibson@gmail.com>
Wed, 24 Apr 2013 15:38:23 +0000 (11:38 -0400)
committerRichard Gibson <richard.gibson@gmail.com>
Wed, 24 Apr 2013 15:38:23 +0000 (11:38 -0400)
src/traversing.js
test/unit/traversing.js

index a9c9c9796ab465dedbc26b850963d537ee5f58f2..c1798a44ff2088d2451781dc9f16f5bbd0b7138b 100644 (file)
@@ -201,7 +201,7 @@ jQuery.each({
                        }
 
                        // Reverse order for parents* and prev*
-                       if ( name.charAt(0) === "p" ) {
+                       if ( name.charAt(0) === "p" && name !== "parent" ) {
                                ret = ret.reverse();
                        }
                }
index b98abdcd484e7dc5772868b358e8dbcf7524fe56..a622ba90249f5baf11ae52fc1eac6d13c3979787 100644 (file)
@@ -673,6 +673,32 @@ test("contents()", function() {
        equal( c[0].nodeValue, "hi", "Check node,textnode,comment contents is just the one from span" );
 });
 
+test("sort direction", function() {
+       expect( 12 );
+
+       var elems = jQuery("#ap, #select1 > *, #moretests > form"),
+               methodDirections = {
+                       parent: false,
+                       parents: true,
+                       parentsUntil: true,
+                       next: false,
+                       prev: true,
+                       nextAll: false,
+                       prevAll: true,
+                       nextUntil: false,
+                       prevUntil: true,
+                       siblings: false,
+                       children: false,
+                       contents: false
+               };
+
+       jQuery.each( methodDirections, function( method, reversed ) {
+               var actual = elems[ method ]().get(),
+                       forward = jQuery.unique( [].concat( actual ) );
+               deepEqual( actual, reversed ? forward.reverse() : forward, "Correct sort direction for " + method );
+       });
+});
+
 test("add(String|Element|Array|undefined)", function() {
        expect( 15 );