]> source.dussan.org Git - jquery.git/commitdiff
Support tests
authorOleg <markelog@gmail.com>
Sun, 4 Aug 2013 23:59:02 +0000 (03:59 +0400)
committerOleg <markelog@gmail.com>
Wed, 7 Aug 2013 21:18:26 +0000 (01:18 +0400)
* Check all the properties in jQuery.support
* Fix value of "pixelPosition" in new Chrome

test/unit/support.js

index 6e79238120779b7ca7165e4226e0f61a58348901..313b832a505046fa5d5097bc000aca741228a6f2 100644 (file)
@@ -38,175 +38,189 @@ testIframeWithCallback( "box-sizing does not affect jQuery.support.shrinkWrapBlo
 });
 
 (function() {
-       var expected,
+       var expected, version,
                userAgent = window.navigator.userAgent;
 
-       // These tests do not have to stay
-       // They are here to help with upcoming support changes for 1.8
        if ( /chrome/i.test( userAgent ) ) {
+               version = userAgent.match( /chrome\/(\d+)/i )[ 1 ];
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":true,
-                       "optSelected":true,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":false,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":true,
-                       "optDisabled":true,
-                       "radioValue":true,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":true,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": true,
+                       "optSelected": true,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": false,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": true,
+                       "optDisabled": true,
+                       "radioValue": true,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": true,
                        "clearCloneStyle": true,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": true,
+                       "pixelPosition": version >= 28
                };
        } else if ( /opera.*version\/12\.1/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":true,
-                       "optSelected":true,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":false,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":true,
-                       "optDisabled":true,
-                       "radioValue":false,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":true,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": true,
+                       "optSelected": true,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": false,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": true,
+                       "optDisabled": true,
+                       "radioValue": false,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": true,
                        "clearCloneStyle": true,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": true,
+                       "pixelPosition": true
                };
        } else if ( /msie 10\.0/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":true,
-                       "optSelected":false,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":true,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":false,
-                       "optDisabled":true,
-                       "radioValue":false,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":true,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": true,
+                       "optSelected": false,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": true,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": false,
+                       "optDisabled": true,
+                       "radioValue": false,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": true,
                        "clearCloneStyle": false,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": false,
+                       "pixelPosition": true
                };
        } else if ( /msie 9\.0/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":true,
-                       "optSelected":false,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":true,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":false,
-                       "optDisabled":true,
-                       "radioValue":false,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":false,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": true,
+                       "optSelected": false,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": true,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": false,
+                       "optDisabled": true,
+                       "radioValue": false,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": false,
                        "clearCloneStyle": false,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": false,
+                       "pixelPosition": true
                };
        } else if ( /msie 8\.0/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":false,
-                       "tbody":true,
-                       "htmlSerialize":false,
-                       "style":false,
-                       "hrefNormalized":true,
-                       "opacity":false,
-                       "cssFloat":false,
-                       "checkOn":true,
-                       "optSelected":false,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":false,
-                       "submitBubbles":false,
-                       "changeBubbles":false,
-                       "focusinBubbles":true,
-                       "deleteExpando":false,
-                       "noCloneEvent":false,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":false,
-                       "optDisabled":true,
-                       "radioValue":false,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":false,
-                       "ajax":true,
-                       "cors":false,
+                       "leadingWhitespace": false,
+                       "tbody": true,
+                       "htmlSerialize": false,
+                       "style": false,
+                       "hrefNormalized": true,
+                       "opacity": false,
+                       "cssFloat": false,
+                       "checkOn": true,
+                       "optSelected": false,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": false,
+                       "submitBubbles": false,
+                       "changeBubbles": false,
+                       "focusinBubbles": true,
+                       "deleteExpando": false,
+                       "noCloneEvent": false,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": false,
+                       "optDisabled": true,
+                       "radioValue": false,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": false,
+                       "ajax": true,
+                       "cors": false,
                        "clearCloneStyle": true,
-                       "ownLast": true
+                       "ownLast": true,
+                       "boxSizing": true,
+                       "boxSizingReliable": true,
+                       "pixelPosition": false
                };
        } else if ( /msie 7\.0/i.test( userAgent ) ) {
                expected = {
@@ -239,112 +253,125 @@ testIframeWithCallback( "box-sizing does not affect jQuery.support.shrinkWrapBlo
                        "tbody": false,
                        "style": false,
                        "clearCloneStyle": true,
-                       "ownLast": true
+                       "ownLast": true,
+                       "boxSizing": false,
+                       "boxSizingReliable": true,
+                       "pixelPosition": false
                };
        } else if ( /msie 6\.0/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":false,
-                       "tbody":false,
-                       "htmlSerialize":false,
-                       "style":false,
-                       "hrefNormalized":false,
-                       "opacity":false,
-                       "cssFloat":false,
-                       "checkOn":true,
-                       "optSelected":false,
-                       "getSetAttribute":false,
-                       "enctype":true,
-                       "html5Clone":false,
-                       "submitBubbles":false,
-                       "changeBubbles":false,
-                       "focusinBubbles":true,
-                       "deleteExpando":false,
-                       "noCloneEvent":false,
-                       "inlineBlockNeedsLayout":true,
-                       "shrinkWrapBlocks":true,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":false,
-                       "optDisabled":true,
-                       "radioValue":false,
-                       "checkClone":false,
-                       "appendChecked":false,
-                       "reliableHiddenOffsets":false,
-                       "ajax":true,
-                       "cors":false,
+                       "leadingWhitespace": false,
+                       "tbody": false,
+                       "htmlSerialize": false,
+                       "style": false,
+                       "hrefNormalized": false,
+                       "opacity": false,
+                       "cssFloat": false,
+                       "checkOn": true,
+                       "optSelected": false,
+                       "getSetAttribute": false,
+                       "enctype": true,
+                       "html5Clone": false,
+                       "submitBubbles": false,
+                       "changeBubbles": false,
+                       "focusinBubbles": true,
+                       "deleteExpando": false,
+                       "noCloneEvent": false,
+                       "inlineBlockNeedsLayout": true,
+                       "shrinkWrapBlocks": true,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": false,
+                       "optDisabled": true,
+                       "radioValue": false,
+                       "checkClone": false,
+                       "appendChecked": false,
+                       "reliableHiddenOffsets": false,
+                       "ajax": true,
+                       "cors": false,
                        "clearCloneStyle": true,
-                       "ownLast": true
+                       "ownLast": true,
+                       "boxSizing": false,
+                       "boxSizingReliable": true,
+                       "pixelPosition": false
                };
        } else if ( /5\.1\.1 safari/i.test( userAgent ) ) {
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":false,
-                       "optSelected":true,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":false,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":true,
-                       "optDisabled":true,
-                       "radioValue":true,
-                       "checkClone":false,
-                       "appendChecked":false,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":true,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": false,
+                       "optSelected": true,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": false,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": true,
+                       "optDisabled": true,
+                       "radioValue": true,
+                       "checkClone": false,
+                       "appendChecked": false,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": true,
                        "clearCloneStyle": true,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": true,
+                       "pixelPosition": false
                };
        } else if ( /firefox/i.test( userAgent ) ) {
+               version = userAgent.match( /firefox\/(\d+)/i )[ 1 ];
                expected = {
-                       "leadingWhitespace":true,
-                       "tbody":true,
-                       "htmlSerialize":true,
-                       "style":true,
-                       "hrefNormalized":true,
-                       "opacity":true,
-                       "cssFloat":true,
-                       "checkOn":true,
-                       "optSelected":true,
-                       "getSetAttribute":true,
-                       "enctype":true,
-                       "html5Clone":true,
-                       "submitBubbles":true,
-                       "changeBubbles":true,
-                       "focusinBubbles":false,
-                       "deleteExpando":true,
-                       "noCloneEvent":true,
-                       "inlineBlockNeedsLayout":false,
-                       "shrinkWrapBlocks":false,
-                       "reliableMarginRight":true,
-                       "noCloneChecked":true,
-                       "optDisabled":true,
-                       "radioValue":true,
-                       "checkClone":true,
-                       "appendChecked":true,
-                       "reliableHiddenOffsets":true,
-                       "ajax":true,
-                       "cors":true,
+                       "leadingWhitespace": true,
+                       "tbody": true,
+                       "htmlSerialize": true,
+                       "style": true,
+                       "hrefNormalized": true,
+                       "opacity": true,
+                       "cssFloat": true,
+                       "checkOn": true,
+                       "optSelected": true,
+                       "getSetAttribute": true,
+                       "enctype": true,
+                       "html5Clone": true,
+                       "submitBubbles": true,
+                       "changeBubbles": true,
+                       "focusinBubbles": false,
+                       "deleteExpando": true,
+                       "noCloneEvent": true,
+                       "inlineBlockNeedsLayout": false,
+                       "shrinkWrapBlocks": false,
+                       "reliableMarginRight": true,
+                       "noCloneChecked": true,
+                       "optDisabled": true,
+                       "radioValue": true,
+                       "checkClone": true,
+                       "appendChecked": true,
+                       "reliableHiddenOffsets": true,
+                       "ajax": true,
+                       "cors": true,
                        "clearCloneStyle": true,
-                       "ownLast": false
+                       "ownLast": false,
+                       "boxSizing": true,
+                       "boxSizingReliable": version >= 23,
+                       "pixelPosition": true
                };
        }
 
        if ( expected ) {
-               test("Verify that the support tests resolve as expected per browser", function() {
-                       expect( 30 );
+               test( "Verify that the support tests resolve as expected per browser", function() {
+                       expect( 33 );
 
                        for ( var i in expected ) {
                                if ( jQuery.ajax || i !== "ajax" && i !== "cors" ) {