Bug 1251431 - Part 3: Add a reftest for masked clip paths. r=jwatt draft
authorBas Schouten <bschouten@mozilla.com>
Thu, 10 Mar 2016 04:00:46 +0100
changeset 338879 4f3c4d62ccce8761dfe2f6dfcb242ceb870902e3
parent 338878 16a65a510c3e55f621d87b171be1d8ff84422ffb
child 515871 ab11197ec59b432eefb20e03a5f4bcfa4389358b
push id12595
push userbschouten@mozilla.com
push dateThu, 10 Mar 2016 03:00:36 +0000
reviewersjwatt
bugs1251431
milestone47.0a1
Bug 1251431 - Part 3: Add a reftest for masked clip paths. r=jwatt MozReview-Commit-ID: 263pmpb2LsL
layout/reftests/svg/masked-clip.html
layout/reftests/svg/reftest.list
new file mode 100644
--- /dev/null
+++ b/layout/reftests/svg/masked-clip.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<html><head>
+<meta http-equiv="content-type" content="text/html; charset=UTF-8">
+<meta charset="UTF-8">
+<style>
+
+body {
+  background: #0f0;
+}
+
+mask :first-child {
+  fill: #fff;
+}
+
+
+div, :before, :after {
+  position: absolute;
+  top: 0;
+  left: 0;
+}
+
+.red {
+  background: #f00;
+  content: '';
+  top: 2px;
+  left: 2px;
+  width: 194px;
+  height: 194px;
+  mask:url(#mb);
+}
+
+.green {
+  background: #0f0;
+}
+
+.green {
+  margin: 0;
+  width: 200px;
+  height: 200px;
+  clip-path: url(#cp);
+  content: '';
+}
+.green {
+  mask: url(#mb);
+}
+
+</style>
+</head>
+
+<body>
+<svg>
+  <defs>
+    <polygon id="p" points="0,0 1,0 1,1 0,1"></polygon>
+    <clipPath id="cp" clipPathUnits="objectBoundingBox">
+      <use xlink:href="#p"></use>
+    </clipPath>
+    <mask id="mb" maskContentUnits="objectBoundingBox">
+      <circle cx="0.5" cy="0.5" r="0.5"></circle>
+    </mask>
+  </defs>
+</svg>
+
+<div>
+  <div class="red"></div>
+  <div class="green"></div>
+</div>
+    
+
+</body></html>
\ No newline at end of file
--- a/layout/reftests/svg/reftest.list
+++ b/layout/reftests/svg/reftest.list
@@ -210,16 +210,17 @@ fuzzy-if(skiaContent,1,5) pref(svg.marke
 == mask-basic-02.svg mask-basic-02-ref.svg
 == mask-basic-03.svg pass.svg
 == mask-basic-04.svg pass.svg
 == mask-extref-dataURI-01.svg pass.svg
 == mask-containing-masked-content-01.svg pass.svg
 == mask-transformed-01.svg mask-transformed-01-ref.svg
 == mask-transformed-02.svg pass.svg
 == mask-transformed-child-01.svg mask-transformed-child-01-ref.svg
+== masked-clip.html pass.svg
 pref(layout.css.masking.enabled,true) fuzzy-if(d2d||skiaContent,1,6400) == mask-type-01.svg mask-type-01-ref.svg
 pref(layout.css.masking.enabled,true) fuzzy-if(d2d||skiaContent,1,6400) == mask-type-02.svg mask-type-01-ref.svg
 pref(layout.css.masking.enabled,true) fuzzy-if(d2d||skiaContent,1,6400) == mask-type-03.svg mask-type-01-ref.svg
 pref(layout.css.masking.enabled,true) fuzzy-if(d2d||skiaContent,1,6400) == mask-type-04.svg mask-type-01-ref.svg
 == nested-viewBox-01.svg pass.svg
 fuzzy-if(skiaContent,3,448000) == nesting-invalid-01.svg nesting-invalid-01-ref.svg
 fuzzy-if(d2d&&/^Windows\x20NT\x20(6\.1|10\.0)/.test(http.oscpu),63,168) fuzzy-if(cocoaWidget,1,122) fuzzy-if(skiaContent,2,1000) == non-scaling-stroke-01.svg non-scaling-stroke-01-ref.svg # bug 1074161 for Win7 and OSX 10.8
 fuzzy-if(gtkWidget,1,99) fuzzy-if(!contentSameGfxBackendAsCanvas,9,99) fuzzy-if(Android||B2G,9,586) == non-scaling-stroke-02.svg non-scaling-stroke-02-ref.svg