Bug 1310237 - Change skip-if(!asyncZoom) tests to skip-if(!Android) with zooming enabled. Also update the fuzziness checks to match current Android reftest results. r?tnikkel draft
authorKartikaya Gupta <kgupta@mozilla.com>
Wed, 19 Oct 2016 16:16:07 -0400
changeset 427158 938007daf9f3eced3c76e10cb595932dc4a05527
parent 427069 f40960c63bfac865d510ec9da42eeed74c384082
child 534404 a5aa7a04209bbc707bcfdf3b384451afac4313b3
push id32948
push userkgupta@mozilla.com
push dateWed, 19 Oct 2016 23:03:44 +0000
reviewerstnikkel
bugs1310237
milestone52.0a1
Bug 1310237 - Change skip-if(!asyncZoom) tests to skip-if(!Android) with zooming enabled. Also update the fuzziness checks to match current Android reftest results. r?tnikkel MozReview-Commit-ID: 5gcBgzyOq7b
gfx/layers/apz/test/reftest/reftest.list
layout/reftests/reftest-sanity/async-zoom-2.html
layout/reftests/reftest-sanity/reftest.list
layout/tools/reftest/README.txt
layout/tools/reftest/reftest.jsm
--- a/gfx/layers/apz/test/reftest/reftest.list
+++ b/gfx/layers/apz/test/reftest/reftest.list
@@ -1,19 +1,19 @@
 # The following tests test the async positioning of the scrollbars.
 # Basic root-frame scrollbar with async scrolling
-skip-if(!asyncPan) fuzzy-if(Android,6,8) == async-scrollbar-1-v.html async-scrollbar-1-v-ref.html
-skip-if(!asyncPan) fuzzy-if(Android,6,8) == async-scrollbar-1-h.html async-scrollbar-1-h-ref.html
-skip-if(!asyncPan) fuzzy-if(Android,6,8) == async-scrollbar-1-vh.html async-scrollbar-1-vh-ref.html
-skip-if(!asyncPan) fuzzy-if(Android,6,8) == async-scrollbar-1-v-rtl.html async-scrollbar-1-v-rtl-ref.html
-skip-if(!asyncPan) fuzzy-if(Android,13,8) == async-scrollbar-1-h-rtl.html async-scrollbar-1-h-rtl-ref.html
-skip-if(!asyncPan) fuzzy-if(Android,8,11) == async-scrollbar-1-vh-rtl.html async-scrollbar-1-vh-rtl-ref.html
+fuzzy-if(Android,1,2) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-v.html async-scrollbar-1-v-ref.html
+fuzzy-if(Android,4,5) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-h.html async-scrollbar-1-h-ref.html
+fuzzy-if(Android,3,5) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-vh.html async-scrollbar-1-vh-ref.html
+fuzzy-if(Android,1,2) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-v-rtl.html async-scrollbar-1-v-rtl-ref.html
+fuzzy-if(Android,4,5) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-h-rtl.html async-scrollbar-1-h-rtl-ref.html
+fuzzy-if(Android,3,7) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-1-vh-rtl.html async-scrollbar-1-vh-rtl-ref.html
 
 # Different async zoom levels. Since the scrollthumb gets async-scaled in the
 # compositor, the border-radius ends of the scrollthumb are going to be a little
 # off, hence the fuzzy-if clauses.
-skip-if(!asyncZoom) fuzzy-if(B2G,98,82) == async-scrollbar-zoom-1.html async-scrollbar-zoom-1-ref.html
-skip-if(!asyncZoom) fuzzy-if(B2G,94,146) == async-scrollbar-zoom-2.html async-scrollbar-zoom-2-ref.html
+fuzzy-if(Android,54,18) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-zoom-1.html async-scrollbar-zoom-1-ref.html
+fuzzy-if(Android,45,21) skip-if(!Android) pref(apz.allow_zooming,true) == async-scrollbar-zoom-2.html async-scrollbar-zoom-2-ref.html
 
 # Meta-viewport tag support
-skip-if(!asyncZoom) == initial-scale-1.html initial-scale-1-ref.html
+skip-if(!Android) pref(apz.allow_zooming,true) == initial-scale-1.html initial-scale-1-ref.html
 
 skip-if(!asyncPan) == frame-reconstruction-scroll-clamping.html frame-reconstruction-scroll-clamping-ref.html
--- a/layout/reftests/reftest-sanity/async-zoom-2.html
+++ b/layout/reftests/reftest-sanity/async-zoom-2.html
@@ -1,11 +1,6 @@
 <!DOCTYPE HTML>
 <html reftest-async-zoom="2">
-<!-- There is a bug with MultiTiledContentClient that causes improper painting;
-     bug 1204076 is on file for this issue. As a temporary workaround, we set
-     user-scalable=no here so that WantAsyncZoom() returns false and we don't
-     use a MultiTiledContentClient. Once bug 1204076 is fixed, we can remove this. -->
-<meta name="viewport" content="user-scalable=no">
 <body>
 <div style="position:absolute; top: 0; left: 0; width: 100px; height: 100px; background: red;"></div>
 </body>
 </html>
--- a/layout/reftests/reftest-sanity/reftest.list
+++ b/layout/reftests/reftest-sanity/reftest.list
@@ -161,18 +161,18 @@ fails == reftest-no-paint.html reftest-n
 skip-if(!asyncPan||!browserIsRemote) == async-scroll-1a.html async-scroll-1-ref.html
 
 # Disable low-res painting for this test as it will cause more to
 # be drawn than we want.
 default-preferences pref(layers.low-precision-buffer,false)
 skip-if(!asyncPan||!browserIsRemote) != async-scroll-1b.html async-scroll-1-ref.html
 default-preferences
 
-skip-if(!asyncZoom) != async-zoom-1.html async-zoom-1-ref.html
-fuzzy(112,1197) skip-if(!asyncZoom) == async-zoom-2.html async-zoom-2-ref.html
+skip-if(!Android) pref(apz.allow_zooming,true) != async-zoom-1.html async-zoom-1-ref.html
+fuzzy(112,800) skip-if(!Android) pref(apz.allow_zooming,true) == async-zoom-2.html async-zoom-2-ref.html
 
 # reftest-opaque-layer
 == reftest-opaque-layer-pass.html reftest-opaque-layer-pass.html
 != reftest-opaque-layer-pass.html about:blank
 != about:blank reftest-opaque-layer-pass.html
 fails == reftest-opaque-layer-fail.html reftest-opaque-layer-fail.html
 
 # If reftest-opaque-layer fails (no matter whether it fails in the test or in the reference),
--- a/layout/tools/reftest/README.txt
+++ b/layout/tools/reftest/README.txt
@@ -550,17 +550,17 @@ offset (in CSS pixels) added to the asyn
 Testing Async Zooming: reftest-async-zoom="<float>"
 =========================================================
 
 When the "reftest-async-zoom" attribute is present on the root element then at
 the end of the test take the snapshot with the given async zoom on top of any
 existing zoom. Content is not re-rendered at the new zoom level. This
 corresponds to the mobile style "pinch zoom" style of zoom. This is unsupported
 in many configurations, and any tests using this will probably want to have
-skip-if(!asyncPanZoom) on them.
+pref(apz.allow_zooming,true) on them.
 
 Printing Tests: class="reftest-print"
 =====================================
 
 Now that the patch for bug 374050 has landed
 (https://bugzilla.mozilla.org/show_bug.cgi?id=374050), it is possible to
 create reftests that run in a paginated context.
 
--- a/layout/tools/reftest/reftest.jsm
+++ b/layout/tools/reftest/reftest.jsm
@@ -742,21 +742,16 @@ function BuildConditionSandbox(aURL) {
     sandbox.browserIsRemote = gBrowserIsRemote;
     sandbox.Mulet = gB2GisMulet;
 
     try {
         sandbox.asyncPan = gContainingWindow.document.docShell.asyncPanZoomEnabled;
     } catch (e) {
         sandbox.asyncPan = false;
     }
-    try {
-        sandbox.asyncZoom = sandbox.asyncPan && prefs.getBoolPref("apz.allow_zooming");
-    } catch (e) {
-        sandbox.asyncZoom = false;
-    }
 
     if (!gDumpedConditionSandbox) {
         logger.info("Dumping JSON representation of sandbox");
         logger.info(JSON.stringify(CU.waiveXrays(sandbox)));
         gDumpedConditionSandbox = true;
     }
 
     // Graphics features