Bug 1366434 - Part 2. Reftest of mask-mode/mask-composite automatic fill. draft
authorcku <cku@mozilla.com>
Tue, 23 May 2017 18:08:48 +0800
changeset 582991 4df9e93a2be64831ea986d2a9a831a5f9817a76f
parent 582981 c293049f68889570d0286f3fb6384665d8512672
child 629928 2301f0f0e4a54fecaecacf426cb04f3a06a8bf06
push id60254
push userbmo:cku@mozilla.com
push dateTue, 23 May 2017 13:40:43 +0000
bugs1366434
milestone55.0a1
Bug 1366434 - Part 2. Reftest of mask-mode/mask-composite automatic fill. MozReview-Commit-ID: LZHxd5pQzmR
layout/reftests/w3c-css/submitted/masking/mask-composite-1d.html
layout/reftests/w3c-css/submitted/masking/mask-mode-d.html
layout/reftests/w3c-css/submitted/masking/reftest.list
new file mode 100644
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/masking/mask-composite-1d.html
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>CSS Masking: mask-composite: compose vector image</title>
+    <link rel="author" title="CJ Ku" href="mailto:cku@mozilla.com">
+    <link rel="author" title="Mozilla" href="https://www.mozilla.org">
+    <link rel="help" href="http://www.w3.org/TR/css-masking-1/#the-mask-composite">
+    <link rel="match" href="mask-composite-1-ref.html">
+    <meta name="assert" content="Test checks that whether mask-composite is filled automatically according to the number of mask layers.">
+    <style type="text/css">
+      div {
+        background-color: blue;
+        position: absolute;
+        margin: 0px;
+        padding: 0px;
+        width: 100px;
+        height: 100px;
+        top: 10px;
+      }
+
+      div.add {
+        left: 10px;
+        mask-composite: add;
+        mask-image: url(support/blue-100x50-transparent-100x50.svg),
+                    url(support/blue-100x50-transparent-100x50.svg),
+                    url(support/blue-100x50-transparent-100x50.svg);
+      }
+
+      div.intersect {
+        left: 120px;
+        mask-composite: intersect;
+        mask-image: url(support/blue-100x50-transparent-100x50.svg),
+                    url(support/transparent-100x50-blue-100x50.svg),
+                    linear-gradient(rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 100%);
+      }
+
+      div.subtract {
+        left: 230px;
+        mask-composite: subtract;
+        mask-image: url(support/blue-100x50-transparent-100x50.svg),
+                    url(support/blue-100x50-transparent-100x50.svg),
+                    url(support/blue-100x50-transparent-100x50.svg);
+      }
+
+      div.exclude {
+        left: 340px;
+        mask-composite: exclude;
+        mask-image: url(support/transparent-100x50-blue-100x50.svg),
+                    linear-gradient(rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 100%),
+                    url(support/blue-100x50-transparent-100x50.svg);
+      }
+    </style>
+  </head>
+  <body>
+    <div class="add"></div>
+    <div class="intersect"></div>
+    <div class="subtract"></div>
+    <div class="exclude"></div>
+  </body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/w3c-css/submitted/masking/mask-mode-d.html
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <title>CSS Masking: mask-mode with raster image</title>
+    <link rel="author" title="CJ Ku" href="mailto:cku@mozilla.com">
+    <link rel="author" title="Mozilla" href="https://www.mozilla.org">
+    <link rel="help" href="https://www.w3.org/TR/css-masking-1/#propdef-mask-mode">
+    <link rel="match" href="mask-mode-ref.html">
+    <meta name="assert" content="Test checks that whether mask-mode is filled automatically according to the number of mask layers.">
+    <style type="text/css">
+      div {
+        background-color: blue;
+        position: absolute;
+        margin: 0px;
+        padding: 0px;
+        width: 100px;
+        height: 100px;
+        top: 10px;
+      }
+
+      div.auto {
+        left: 10px;
+        mask-mode: match-source;
+        mask-image: linear-gradient(black 0%, black 100%), linear-gradient(blue 0%, blue 100%);
+      }
+
+      div.alpha {
+        left: 120px;
+        mask-mode: alpha alpha;
+        mask-image: linear-gradient(black 0%, black 100%), linear-gradient(blue 0%, blue 100%);
+      }
+
+      div.luminance1 {
+        left: 230px;
+        mask-mode: luminance;
+        mask-image: linear-gradient(black 0%, black 100%), linear-gradient(blue 0%, blue 100%);
+      }
+
+      div.luminance2 {
+        left: 340px;
+        mask-mode: luminance;
+        mask-image: linear-gradient(black 0%, black 100%), linear-gradient(red 0%, red 100%);
+      }
+
+      div.luminance3 {
+        left: 450px;
+        mask-mode: luminance;
+        mask-image: linear-gradient(black 0%, black 100%), linear-gradient(lime 0%, lime 100%);
+      }
+    </style>
+  </head>
+  <body>
+    <div class="auto"></div>
+    <div class="alpha"></div>
+    <div class="luminance1"></div>
+    <div class="luminance2"></div>
+    <div class="luminance3"></div>
+  </body>
+</html>
\ No newline at end of file
--- a/layout/reftests/w3c-css/submitted/masking/reftest.list
+++ b/layout/reftests/w3c-css/submitted/masking/reftest.list
@@ -1,22 +1,24 @@
 # For those test items with failure type fuzzy-if added, please refer to bug 1231643#c10.
 
 # mask-composite test cases
 == mask-composite-1a.html mask-composite-1-ref.html
 fuzzy-if(skiaContent,64,200) == mask-composite-1b.html mask-composite-1-ref.html
 == mask-composite-1c.html mask-composite-1-ref.html
+== mask-composite-1d.html mask-composite-1-ref.html
 fuzzy-if(skiaContent||winWidget,1,5000) == mask-composite-2a.html mask-composite-2-ref.html
 fuzzy-if(skiaContent||winWidget,64,5200) == mask-composite-2b.html mask-composite-2-ref.html
 == mask-composite-2c.html mask-composite-2-ref.html
 
 # mask-mode test cases
 fuzzy-if(skiaContent,1,30000) == mask-mode-a.html mask-mode-ref.html
 fuzzy-if(skiaContent,1,30000) == mask-mode-b.html mask-mode-ref.html
 fuzzy-if(skiaContent,1,30000) == mask-mode-c.html mask-mode-ref.html
+fuzzy-if(skiaContent,1,30000) == mask-mode-d.html mask-mode-ref.html
 fuzzy-if(skiaContent,1,30000) == mask-mode-to-mask-type.html mask-mode-to-mask-type-ref.html
 
 # mask-image test cases
 == mask-image-1a.html mask-image-1-ref.html
 == mask-image-1b.html mask-image-1-ref.html
 == mask-image-1c.html mask-image-1-ref.html
 == mask-image-1d.html mask-image-1-ref.html
 fuzzy-if(skiaContent||winWidget,1,20000) == mask-image-2.html mask-image-2-ref.html