Renamed several ajaxSettings options. Removed cors test, fixed failing cors test.
[jquery.git] / test / unit / attributes.js
index 7314b3a..f9506b3 100644 (file)
@@ -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("<p>Hi</p>"), 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("<p class='class1\nclass2\tcla.ss3\n'></p>");
-       ok( jq.hasClass("class1"), "Check hasClass with carriage return" );
-       ok( jq.is(".class1"), "Check is with carriage return" );
+       var jq = jQuery("<p class='class1\nclass2\tcla.ss3\n\rclass4'></p>");
+       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" );
 });