X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=test%2Funit%2Fcore.js;h=c5ff6f6c5170d4d1dc3a2b0a34527101ee256b4f;hb=f89f5eb61f6b19cc2204ddbe2abc797f7ee14cfd;hp=8483361a1735937c011afd7e0e1a9f2c360b00c2;hpb=0c97178553606c01b999441836e23f9f36c645a3;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index 8483361..c5ff6f6 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -53,7 +53,7 @@ test("jQuery()", function() { }); test("selector state", function() { - expect(28); + expect(30); var test; @@ -72,6 +72,10 @@ test("selector state", function() { test = jQuery("#main"); equals( test.selector, "#main", "#main Selector" ); equals( test.context, document, "#main Context" ); + + test = jQuery("#notfoundnono"); + equals( test.selector, "#notfoundnono", "#notfoundnono Selector" ); + equals( test.context, document, "#notfoundnono Context" ); test = jQuery("#main", document); equals( test.selector, "#main", "#main Selector" ); @@ -401,8 +405,8 @@ test("attr(String)", function() { equals( jQuery('#text1').attr('maxLength'), '30', 'Check for maxLength attribute' ); equals( jQuery('#area1').attr('maxLength'), '30', 'Check for maxLength attribute' ); equals( jQuery('#select2').attr('selectedIndex'), 3, 'Check for selectedIndex attribute' ); - equals( jQuery('#foo').attr('nodeName'), 'DIV', 'Check for nodeName attribute' ); - equals( jQuery('#foo').attr('tagName'), 'DIV', 'Check for tagName attribute' ); + equals( jQuery('#foo').attr('nodeName').toUpperCase(), 'DIV', 'Check for nodeName attribute' ); + equals( jQuery('#foo').attr('tagName').toUpperCase(), 'DIV', 'Check for tagName attribute' ); jQuery('').attr('href', '#5').appendTo('#main'); // using innerHTML in IE causes href attribute to be serialized to the full path equals( jQuery('#tAnchor5').attr('href'), "#5", 'Check for non-absolute href (an anchor)' ); @@ -552,22 +556,21 @@ if ( !isLocal ) { } test("attr('tabindex')", function() { - expect(5); - - // tabindex 0 - equals(jQuery('#listWithTabIndex').attr('tabindex'), 0, 'tabindex of 0'); - - // positive tabindex - equals(jQuery('#linkWithTabIndex').attr('tabindex'), 2, 'tabindex of 2'); - - // negative tabindex - equals(jQuery('#linkWithNegativeTabIndex').attr('tabindex'), -1, 'negative tabindex'); + expect(8); - // regular element without a tabindex - equals(jQuery('#divWithNoTabIndex').attr('tabindex'), undefined, 'no tabindex, not tabbable by default'); + // elements not natively tabbable + equals(jQuery('#listWithTabIndex').attr('tabindex'), 5, 'not natively tabbable, with tabindex set to 0'); + equals(jQuery('#divWithNoTabIndex').attr('tabindex'), undefined, 'not natively tabbable, no tabindex set'); + + // anchor with href + equals(jQuery('#linkWithNoTabIndex').attr('tabindex'), 0, 'anchor with href, no tabindex set'); + equals(jQuery('#linkWithTabIndex').attr('tabindex'), 2, 'anchor with href, tabindex set to 2'); + equals(jQuery('#linkWithNegativeTabIndex').attr('tabindex'), -1, 'anchor with href, tabindex set to -1'); - // link without a tabindex - equals(jQuery('#linkWithNoTabIndex').attr('tabindex'), 0, 'no tabindex, tabbable by default'); + // anchor without href + equals(jQuery('#linkWithNoHrefWithNoTabIndex').attr('tabindex'), undefined, 'anchor without href, no tabindex set'); + equals(jQuery('#linkWithNoHrefWithTabIndex').attr('tabindex'), 1, 'anchor without href, tabindex set to 2'); + equals(jQuery('#linkWithNoHrefWithNegativeTabIndex').attr('tabindex'), -1, 'anchor without href, no tabindex set'); }); test("attr('tabindex', value)", function() { @@ -612,11 +615,11 @@ test("css(String|Hash)", function() { equals( jQuery('#main').css("display"), 'none', 'Check for css property "display"'); - ok( jQuery('#foo').is(':visible'), 'Modifying CSS display: Assert element is visible'); - jQuery('#foo').css({display: 'none'}); - ok( !jQuery('#foo').is(':visible'), 'Modified CSS display: Assert element is hidden'); - jQuery('#foo').css({display: 'block'}); - ok( jQuery('#foo').is(':visible'), 'Modified CSS display: Assert element is visible'); + ok( jQuery('#nothiddendiv').is(':visible'), 'Modifying CSS display: Assert element is visible'); + jQuery('#nothiddendiv').css({display: 'none'}); + ok( !jQuery('#nothiddendiv').is(':visible'), 'Modified CSS display: Assert element is hidden'); + jQuery('#nothiddendiv').css({display: 'block'}); + ok( jQuery('#nothiddendiv').is(':visible'), 'Modified CSS display: Assert element is visible'); jQuery('#floatTest').css({styleFloat: 'right'}); equals( jQuery('#floatTest').css('styleFloat'), 'right', 'Modified CSS float using "styleFloat": Assert float is right'); @@ -639,11 +642,11 @@ test("css(String|Hash)", function() { test("css(String, Object)", function() { expect(21); - ok( jQuery('#foo').is(':visible'), 'Modifying CSS display: Assert element is visible'); - jQuery('#foo').css('display', 'none'); - ok( !jQuery('#foo').is(':visible'), 'Modified CSS display: Assert element is hidden'); - jQuery('#foo').css('display', 'block'); - ok( jQuery('#foo').is(':visible'), 'Modified CSS display: Assert element is visible'); + ok( jQuery('#nothiddendiv').is(':visible'), 'Modifying CSS display: Assert element is visible'); + jQuery('#nothiddendiv').css("display", 'none'); + ok( !jQuery('#nothiddendiv').is(':visible'), 'Modified CSS display: Assert element is hidden'); + jQuery('#nothiddendiv').css("display", 'block'); + ok( jQuery('#nothiddendiv').is(':visible'), 'Modified CSS display: Assert element is visible'); jQuery('#floatTest').css('styleFloat', 'left'); equals( jQuery('#floatTest').css('styleFloat'), 'left', 'Modified CSS float using "styleFloat": Assert float is left'); @@ -751,7 +754,7 @@ test("text()", function() { }); test("wrap(String|Element)", function() { - expect(8); + expect(10); var defaultText = 'Try them out:' var result = jQuery('#first').wrap('
').text(); equals( defaultText, result, 'Check for wrapping of on-the-fly html' ); @@ -776,6 +779,11 @@ test("wrap(String|Element)", function() { j.wrap(""); equals( jQuery("#nonnodes > i").length, 3, "Check node,textnode,comment wraps ok" ); equals( jQuery("#nonnodes > i").text(), j.text() + j[1].nodeValue, "Check node,textnode,comment wraps doesn't hurt text" ); + + // Try wrapping a disconnected node + j = jQuery("