X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=test%2Funit%2Fattributes.js;h=f9506b30bc72a44d933103325ada5a9b24d395fb;hb=cec68e2b00d86357c18b576cbaed52cc1ea42a74;hp=7314b3a88167e7cf8727f0c1f0505301eb8d9f1e;hpb=b50f41a2e3ba9ab9a7bcf69a9633b0a8258015d6;p=jquery.git diff --git a/test/unit/attributes.js b/test/unit/attributes.js index 7314b3a..f9506b3 100644 --- a/test/unit/attributes.js +++ b/test/unit/attributes.js @@ -3,6 +3,31 @@ module("attributes"); var bareObj = function(value) { return value; }; var functionReturningObj = function(value) { return (function() { return value; }); }; +test("jQuery.props: itegrity test", function() { + + expect(1); + + // This must be maintained and equal jQuery.props + // Ensure that accidental or erroneous property + // overwrites don't occur + // This is simply for better code coverage and future proofing. + var propsShouldBe = { + "for": "htmlFor", + "class": "className", + readonly: "readOnly", + maxlength: "maxLength", + cellspacing: "cellSpacing", + rowspan: "rowSpan", + colspan: "colSpan", + tabindex: "tabIndex", + usemap: "useMap", + frameborder: "frameBorder" + }; + + same(propsShouldBe, jQuery.props, "jQuery.props passes integrity check"); + +}); + test("attr(String)", function() { expect(37); @@ -146,12 +171,12 @@ test("attr(String, Object)", function() { commentNode = document.createComment("some comment"), textNode = document.createTextNode("some text"), obj = {}; - jQuery.each( [document, attributeNode, obj, "#firstp"], function( i, ele ) { + jQuery.each( [document, obj, "#firstp"], function( i, ele ) { var $ele = jQuery( ele ); $ele.attr( "nonexisting", "foo" ); equal( $ele.attr("nonexisting"), "foo", "attr(name, value) works correctly for non existing attributes (bug #7500)." ); }); - jQuery.each( [commentNode, textNode], function( i, ele ) { + jQuery.each( [commentNode, textNode, attributeNode], function( i, ele ) { var $ele = jQuery( ele ); $ele.attr( "nonexisting", "foo" ); strictEqual( $ele.attr("nonexisting"), undefined, "attr(name, value) works correctly on comment and text nodes (bug #7500)." ); @@ -341,12 +366,12 @@ test("removeAttr(String)", function() { //removeAttr only really removes on DOM element nodes handle all other seperatyl strictEqual( jQuery( "#firstp" ).attr( "nonexisting", "foo" ).removeAttr( "nonexisting" )[0].nonexisting, undefined, "removeAttr works correctly on DOM element nodes" ); - jQuery.each( [document, attributeNode, obj], function( i, ele ) { + jQuery.each( [document, obj], function( i, ele ) { var $ele = jQuery( ele ); $ele.attr( "nonexisting", "foo" ).removeAttr( "nonexisting" ); strictEqual( ele.nonexisting, "", "removeAttr works correctly on non DOM element nodes (bug #7500)." ); }); - jQuery.each( [commentNode, textNode], function( i, ele ) { + jQuery.each( [commentNode, textNode, attributeNode], function( i, ele ) { $ele = jQuery( ele ); $ele.attr( "nonexisting", "foo" ).removeAttr( "nonexisting" ); strictEqual( ele.nonexisting, undefined, "removeAttr works correctly on non DOM element nodes (bug #7500)." ); @@ -764,7 +789,7 @@ test("toggleClass(Fucntion[, boolean]) with incoming value", function() { }); test("addClass, removeClass, hasClass", function() { - expect(14); + expect(17); var jq = jQuery("

Hi

"), x = jq[0]; @@ -784,12 +809,14 @@ test("addClass, removeClass, hasClass", function() { ok( jq.hasClass("hi"), "Check has1" ); ok( jq.hasClass("bar"), "Check has2" ); - var jq = jQuery("

"); - ok( jq.hasClass("class1"), "Check hasClass with carriage return" ); - ok( jq.is(".class1"), "Check is with carriage return" ); + var jq = jQuery("

"); + ok( jq.hasClass("class1"), "Check hasClass with line feed" ); + ok( jq.is(".class1"), "Check is with line feed" ); ok( jq.hasClass("class2"), "Check hasClass with tab" ); ok( jq.is(".class2"), "Check is with tab" ); ok( jq.hasClass("cla.ss3"), "Check hasClass with dot" ); + ok( jq.hasClass("class4"), "Check hasClass with carriage return" ); + ok( jq.is(".class4"), "Check is with carriage return" ); jq.removeClass("class2"); ok( jq.hasClass("class2")==false, "Check the class has been properly removed" ); @@ -797,4 +824,6 @@ test("addClass, removeClass, hasClass", function() { ok( jq.hasClass("cla.ss3"), "Check the dotted class has not been removed" ); jq.removeClass("cla.ss3"); ok( jq.hasClass("cla.ss3")==false, "Check the dotted class has been removed" ); + jq.removeClass("class4"); + ok( jq.hasClass("class4")==false, "Check the class has been properly removed" ); });