Bug 1304353 - part 3 - Add reftests for use of globalAlpha with canvas text drawing. r=bas, a=test-only
authorJonathan Kew <jkew@mozilla.com>
Fri, 23 Sep 2016 13:38:06 +0100
changeset 350419 4956e9c8602bf4dee8da88f5e6e6e746d2f80158
parent 350418 5ef5aef99bf169b52aaa2a8f2bf61b60c1bf77ea
child 350420 835bdb83d00506514f0b68b62afa3dfc481079cb
push id1230
push userjlund@mozilla.com
push dateMon, 31 Oct 2016 18:13:35 +0000
treeherdermozilla-release@5e06e3766db2 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbas, test-only
bugs1304353
milestone50.0
Bug 1304353 - part 3 - Add reftests for use of globalAlpha with canvas text drawing. r=bas, a=test-only
layout/reftests/canvas/1304353-text-global-alpha-1-ref.html
layout/reftests/canvas/1304353-text-global-alpha-1.html
layout/reftests/canvas/1304353-text-global-alpha-2-ref.html
layout/reftests/canvas/1304353-text-global-alpha-2.html
layout/reftests/canvas/reftest.list
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/1304353-text-global-alpha-1-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="UTF-8">
+
+<script>
+function do_test() {
+    var canvas = document.getElementById("test");
+    var ctx = canvas.getContext("2d");
+
+    var g = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);
+    g.addColorStop(0, "red");
+    g.addColorStop(1, "green");
+
+    ctx.fillStyle = g;
+    ctx.fillRect(0, 0, canvas.width, canvas.height);
+
+    ctx.fillStyle = "white";
+    ctx.font = "bold 24px sans-serif";
+
+    ctx.fillText('globalAlpha = 1.0', 20, 40);
+
+    // for reference, use a fill color with alpha instead of global alpha
+    ctx.fillStyle = "rgba(255, 255, 255, 0.5)";
+    ctx.fillText('globalAlpha = 0.5', 20, 80);
+
+    ctx.fillStyle = "rgba(255, 255, 255, 0.2)";
+    ctx.fillText('globalAlpha = 0.2', 20, 120);
+};
+</script>
+
+</head>
+
+<body onload="do_test()">
+
+<canvas id="test"></canvas>
+
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/1304353-text-global-alpha-1.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="UTF-8">
+
+<script>
+function do_test() {
+    var canvas = document.getElementById("test");
+    var ctx = canvas.getContext("2d");
+
+    var g = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);
+    g.addColorStop(0, "red");
+    g.addColorStop(1, "green");
+
+    ctx.fillStyle = g;
+    ctx.fillRect(0, 0, canvas.width, canvas.height);
+
+    ctx.fillStyle = "white";
+    ctx.font = "bold 24px sans-serif";
+
+    ctx.fillText('globalAlpha = 1.0', 20, 40);
+
+    ctx.globalAlpha = 0.5;
+    ctx.fillText('globalAlpha = 0.5', 20, 80);
+
+    ctx.globalAlpha = 0.2;
+    ctx.fillText('globalAlpha = 0.2', 20, 120);
+};
+</script>
+
+</head>
+
+<body onload="do_test()">
+
+<canvas id="test"></canvas>
+
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/1304353-text-global-alpha-2-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="UTF-8">
+
+<script>
+function do_test() {
+    var canvas = document.getElementById("test");
+    var ctx = canvas.getContext("2d");
+
+    var g = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);
+    g.addColorStop(0, "red");
+    g.addColorStop(1, "green");
+
+    ctx.fillStyle = g;
+    ctx.fillRect(0, 0, canvas.width, canvas.height);
+
+    ctx.strokeStyle = "white";
+    ctx.font = "bold 24px sans-serif";
+
+    ctx.strokeText('globalAlpha = 1.0', 20, 40);
+
+    // for reference, use a stroke color with alpha instead of global alpha
+    ctx.strokeStyle = "rgba(255, 255, 255, 0.5)";
+    ctx.strokeText('globalAlpha = 0.5', 20, 80);
+
+    ctx.strokeStyle = "rgba(255, 255, 255, 0.2)";
+    ctx.strokeText('globalAlpha = 0.2', 20, 120);
+};
+</script>
+
+</head>
+
+<body onload="do_test()">
+
+<canvas id="test"></canvas>
+
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/1304353-text-global-alpha-2.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="UTF-8">
+
+<script>
+function do_test() {
+    var canvas = document.getElementById("test");
+    var ctx = canvas.getContext("2d");
+
+    var g = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);
+    g.addColorStop(0, "red");
+    g.addColorStop(1, "green");
+
+    ctx.fillStyle = g;
+    ctx.fillRect(0, 0, canvas.width, canvas.height);
+
+    ctx.strokeStyle = "white";
+    ctx.font = "bold 24px sans-serif";
+
+    ctx.strokeText('globalAlpha = 1.0', 20, 40);
+
+    ctx.globalAlpha = 0.5;
+    ctx.strokeText('globalAlpha = 0.5', 20, 80);
+
+    ctx.globalAlpha = 0.2;
+    ctx.strokeText('globalAlpha = 0.2', 20, 120);
+};
+</script>
+
+</head>
+
+<body onload="do_test()">
+
+<canvas id="test"></canvas>
+
+</body>
+</html>
--- a/layout/reftests/canvas/reftest.list
+++ b/layout/reftests/canvas/reftest.list
@@ -104,8 +104,11 @@ fuzzy-if(azureQuartz,2,128) fuzzy-if(d2d
 
 == 802658-1.html 802658-1-ref.html
 == 1074733-1.html 1074733-1-ref.html
 fuzzy-if(Mulet,45,2) == 1107096-invisibles.html 1107096-invisibles-ref.html
 == 1151821-1.html 1151821-1-ref.html
 == 1201272-1.html 1201272-1-ref.html
 == 1224976-1.html 1224976-1-ref.html
 == 1238795-1.html 1238795-1-ref.html
+
+== 1304353-text-global-alpha-1.html 1304353-text-global-alpha-1-ref.html
+== 1304353-text-global-alpha-2.html 1304353-text-global-alpha-2-ref.html