From 1e9d43c0bedabc8a23573cfed50ef56cbba38b57 Mon Sep 17 00:00:00 2001 From: Oleg Date: Mon, 5 Aug 2013 03:59:02 +0400 Subject: [PATCH] Support tests * Check all the properties in jQuery.support * Fix value of "pixelPosition" in new Chrome --- test/unit/support.js | 503 +++++++++++++++++++++++-------------------- 1 file changed, 265 insertions(+), 238 deletions(-) diff --git a/test/unit/support.js b/test/unit/support.js index 6e7923812..313b832a5 100644 --- a/test/unit/support.js +++ b/test/unit/support.js @@ -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" ) { -- 2.39.5