Fixes #8509. Makes URL regexp less overzealous and ensures it recognizes URL schemes...
[jquery.git] / test / unit / traversing.js
index f0471d7..f5108bd 100644 (file)
@@ -97,9 +97,9 @@ test("filter(Selector)", function() {
 test("filter(Function)", function() {
        expect(2);
 
-       same( jQuery("p").filter(function() { return !jQuery("a", this).length }).get(), q("sndp", "first"), "filter(Function)" );
+       same( jQuery("#main p").filter(function() { return !jQuery("a", this).length }).get(), q("sndp", "first"), "filter(Function)" );
 
-       same( jQuery("p").filter(function(i, elem) { return !jQuery("a", elem).length }).get(), q("sndp", "first"), "filter(Function) using arg" );
+       same( jQuery("#main p").filter(function(i, elem) { return !jQuery("a", elem).length }).get(), q("sndp", "first"), "filter(Function) using arg" );
 });
 
 test("filter(Element)", function() {
@@ -178,7 +178,7 @@ test("not(Element)", function() {
 });
 
 test("not(Function)", function() {
-       same( jQuery("p").not(function() { return jQuery("a", this).length }).get(), q("sndp", "first"), "not(Function)" );
+       same( jQuery("#main p").not(function() { return jQuery("a", this).length }).get(), q("sndp", "first"), "not(Function)" );
 });
 
 test("not(Array)", function() {
@@ -440,12 +440,13 @@ test("add(String|Element|Array|undefined)", function() {
 
 test("add(String, Context)", function() {
        expect(6);
-
-       equals( jQuery(document).add("#form").length, 2, "Make sure that using regular context document still works." );
-       equals( jQuery(document.body).add("#form").length, 2, "Using a body context." );
-       equals( jQuery(document.body).add("#html").length, 1, "Using a body context." );
-
-       equals( jQuery(document).add("#form", document).length, 2, "Use a passed in document context." );
-       equals( jQuery(document).add("#form", document.body).length, 2, "Use a passed in body context." );
-       equals( jQuery(document).add("#html", document.body).length, 1, "Use a passed in body context." );
+       
+       deepEqual( jQuery( "#firstp" ).add( "#ap" ).get(), q( "firstp", "ap" ), "Add selector to selector " );
+       deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap" ).get(), q( "firstp", "ap" ), "Add gEBId to selector" );
+       deepEqual( jQuery( document.getElementById("firstp") ).add( document.getElementById("ap") ).get(), q( "firstp", "ap" ), "Add gEBId to gEBId" );
+
+       var ctx = document.getElementById("firstp");
+       deepEqual( jQuery( "#firstp" ).add( "#ap", ctx ).get(), q( "firstp" ), "Add selector to selector " );
+       deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap", ctx ).get(), q( "firstp" ), "Add gEBId to selector, not in context" );
+       deepEqual( jQuery( document.getElementById("firstp") ).add( "#ap", document.getElementsByTagName("body")[0] ).get(), q( "firstp", "ap" ), "Add gEBId to selector, in context" );
 });