From 704de8180f220afa1efd7bd65e9aeb9007a4f238 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20Go=C5=82e=CC=A8biowski?= Date: Thu, 7 Jan 2016 23:07:58 +0100 Subject: [PATCH] Tests: Disable/relax a few tests failing in Android 2.3 Fixes gh-1785 --- test/unit/manipulation.js | 12 +++++++++--- test/unit/offset.js | 20 ++++++++++++++++++-- test/unit/support.js | 12 ++++++------ 3 files changed, 33 insertions(+), 11 deletions(-) diff --git a/test/unit/manipulation.js b/test/unit/manipulation.js index b30b767d9..a467354af 100644 --- a/test/unit/manipulation.js +++ b/test/unit/manipulation.js @@ -305,9 +305,15 @@ function testAppend( valueObj, assert ) { assert.equal( jQuery( "
" ).append( valueObj( "option" ) )[ 0 ].childNodes.length, 2, "HTML-string with leading text should be processed correctly" ); } -QUnit.test( "append(String|Element|Array|jQuery)", function( assert ) { - testAppend( manipulationBareObj, assert ); -} ); +// Support: Android 2.3 only +// Android 2.3 fails a lot of these tests and we accept it. +// See https://github.com/jquery/jquery/issues/1785 +QUnit[ /android 2\.3/i.test( navigator.userAgent ) ? "skip" : "test" ]( + "append(String|Element|Array|jQuery)", + function( assert ) { + testAppend( manipulationBareObj, assert ); + } +); QUnit.test( "append(Function)", function( assert ) { testAppend( manipulationFunctionReturningObj, assert ); diff --git a/test/unit/offset.js b/test/unit/offset.js index 0a311be30..4df5cbeea 100644 --- a/test/unit/offset.js +++ b/test/unit/offset.js @@ -466,10 +466,26 @@ testIframe( "offset/scroll", "scroll", function( $, win, doc, assert ) { // test jQuery using parent window/document // jQuery reference here is in the iframe + // Support: Android 2.3 only + // Android 2.3 is sometimes off by a few pixels. window.scrollTo( 0, 0 ); - assert.equal( $( window ).scrollTop(), 0, "jQuery(window).scrollTop() other window" ); + if ( /android 2\.3/i.test( navigator.userAgent ) ) { + assert.ok( + Math.abs( $( window ).scrollTop() ) < 5, + "jQuery(window).scrollTop() other window" + ); + } else { + assert.equal( $( window ).scrollTop(), 0, "jQuery(window).scrollTop() other window" ); + } assert.equal( $( window ).scrollLeft(), 0, "jQuery(window).scrollLeft() other window" ); - assert.equal( $( document ).scrollTop(), 0, "jQuery(window).scrollTop() other document" ); + if ( /android 2\.3/i.test( navigator.userAgent ) ) { + assert.ok( + Math.abs( $( window ).scrollTop() ) < 5, + "jQuery(window).scrollTop() other document" + ); + } else { + assert.equal( $( document ).scrollTop(), 0, "jQuery(window).scrollTop() other document" ); + } assert.equal( $( document ).scrollLeft(), 0, "jQuery(window).scrollLeft() other document" ); // Tests scrollTop/Left with empty jquery objects diff --git a/test/unit/support.js b/test/unit/support.js index a763cc1b6..cae3c1eee 100644 --- a/test/unit/support.js +++ b/test/unit/support.js @@ -841,9 +841,9 @@ testIframeWithCallback( "boxSizing": true, "boxSizingReliable": true, "change": true, - "checkClone": false, + "checkClone": true, "checkOn": false, - "clearCloneStyle": true, + "clearCloneStyle": false, "cors": true, "createHTMLDocument": true, "cssFloat": true, @@ -860,15 +860,15 @@ testIframeWithCallback( "noCloneChecked": true, "noCloneEvent": true, "opacity": true, - "optDisabled": true, + "optDisabled": false, "optSelected": true, "ownFirst": true, - "pixelMarginRight": false, + "pixelMarginRight": true, "pixelPosition": false, "radioValue": true, "reliableHiddenOffsets": true, - "reliableMarginRight": true, - "reliableMarginLeft": false, + "reliableMarginRight": false, + "reliableMarginLeft": true, "shrinkWrapBlocks": false, "style": true, "submit": true, -- 2.39.5