diff options
author | Oleg Gaidarenko <markelog@gmail.com> | 2014-02-27 03:01:07 +0400 |
---|---|---|
committer | Oleg Gaidarenko <markelog@gmail.com> | 2014-04-15 17:45:59 +0400 |
commit | c63d1da7cd106d9d12b93154c0423b244e491c3b (patch) | |
tree | 9e0521a6f59ab0eece867ae88c1f26623b50454d | |
parent | 81aa237ee11c731ee92ad6cf7cf958e80f15d057 (diff) | |
download | jquery-c63d1da7cd106d9d12b93154c0423b244e491c3b.tar.gz jquery-c63d1da7cd106d9d12b93154c0423b244e491c3b.zip |
Tests: Copy Sizzle.contains tests
-rw-r--r-- | test/unit/selector.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/test/unit/selector.js b/test/unit/selector.js index f78f048bc..5503e3245 100644 --- a/test/unit/selector.js +++ b/test/unit/selector.js @@ -221,6 +221,32 @@ testIframe("selector/html5_selector", "attributes - jQuery.attr", function( jQue t( "Improperly named form elements do not interfere with form selections (#9570)", "form[name='formName']", ["form1"] ); }); +test( "jQuery.contains", function() { + expect( 16 ); + + var container = document.getElementById("nonnodes"), + element = container.firstChild, + text = element.nextSibling, + nonContained = container.nextSibling, + detached = document.createElement("a"); + ok( element && element.nodeType === 1, "preliminary: found element" ); + ok( text && text.nodeType === 3, "preliminary: found text" ); + ok( nonContained, "preliminary: found non-descendant" ); + ok( jQuery.contains(container, element), "child" ); + ok( jQuery.contains(container.parentNode, element), "grandchild" ); + ok( jQuery.contains(container, text), "text child" ); + ok( jQuery.contains(container.parentNode, text), "text grandchild" ); + ok( !jQuery.contains(container, container), "self" ); + ok( !jQuery.contains(element, container), "parent" ); + ok( !jQuery.contains(container, nonContained), "non-descendant" ); + ok( !jQuery.contains(container, document), "document" ); + ok( !jQuery.contains(container, document.documentElement), "documentElement (negative)" ); + ok( !jQuery.contains(container, null), "Passing null does not throw an error" ); + ok( jQuery.contains(document, document.documentElement), "documentElement (positive)" ); + ok( jQuery.contains(document, element), "document container (positive)" ); + ok( !jQuery.contains(document, detached), "document container (negative)" ); +}); + testIframe("selector/sizzle_cache", "Sizzle cache collides with multiple Sizzles on a page", function( jQuery, window, document ) { var $cached = window["$cached"]; |