bug 715798 pt 3.5 - canvas reftest to check that emoji character is non-blank. r=jrmuizel
authorJonathan Kew <jkew@mozilla.com>
Tue, 23 Oct 2012 10:07:57 +0100
changeset 111131 3a30e45e50e2b1f11c247b12d2987a3ab99b2a41
parent 111130 edd03f7a77b70a1055a30efbf1bd7fac7254b0d5
child 111132 19e5770f482ad129b3ec142f3e7a230a80817a61
push id16885
push userjkew@mozilla.com
push dateTue, 23 Oct 2012 09:11:15 +0000
treeherdermozilla-inbound@3a30e45e50e2 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjrmuizel
bugs715798
milestone19.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
bug 715798 pt 3.5 - canvas reftest to check that emoji character is non-blank. r=jrmuizel
layout/reftests/canvas/reftest.list
layout/reftests/canvas/text-emoji-notref.html
layout/reftests/canvas/text-emoji.html
--- a/layout/reftests/canvas/reftest.list
+++ b/layout/reftests/canvas/reftest.list
@@ -44,16 +44,19 @@ asserts-if(cocoaWidget,0-2) == size-chan
 == text-bidi-rtl-test.html text-bidi-rtl-ref.html
 
 fails-if(Android) != text-font-lang.html text-font-lang-notref.html
 
 == text-measure.html text-measure-ref.html
 
 == strokeText-path.html strokeText-path-ref.html
 
+# check that emoji character renders as something non-blank (for Apple Color Emoji font, bug 715798)
+random-if(!cocoaWidget) fails-if(OSX==10.6) random-if(OSX==10.7) != text-emoji.html text-emoji-notref.html
+
 # azure quartz uses CGDrawLinearGradient instead of DrawShading
 # so we have less control over degenerate behaviour as tested by this
 # test
 fails-if(azureQuartz) == linear-gradient-1a.html linear-gradient-1-ref.html
 
 # this passes with cairo on 10.7 and 10.8 but not with azure for reasons unknown
 fails-if(OSX==10.6||(azureQuartz&&(OSX==10.7||OSX==10.8))) == linear-gradient-1b.html linear-gradient-1-ref.html
 
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/text-emoji-notref.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<title>Test for Unicode emoji in canvas</title>
+<script type="text/javascript">
+function test(canvasID) {
+  var canvas = document.getElementById(canvasID);
+  var ctx = canvas.getContext('2d');
+  var str = 'Hello';
+  ctx.font = '2em sans-serif';
+  ctx.fillStyle = 'black';
+  ctx.textAlign = 'left';
+  ctx.textBaseline = 'top';
+  ctx.fillText(str, 10, 10);
+};
+</script>
+</head>
+<body>
+
+<div lang="en" style="margin:20px; height:100px;">
+<canvas id="c1" width="400" height="50"></canvas>
+<script type="text/javascript">
+  test("c1");
+</script>
+</div>
+
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/canvas/text-emoji.html
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+<title>Test for Unicode emoji in canvas</title>
+<script type="text/javascript">
+function test(canvasID) {
+  var canvas = document.getElementById(canvasID);
+  var ctx = canvas.getContext('2d');
+  var str = 'Hello \uD83D\uDE0E'; // U+1F60E
+  ctx.font = '2em sans-serif';
+  ctx.fillStyle = 'black';
+  ctx.textAlign = 'left';
+  ctx.textBaseline = 'top';
+  ctx.fillText(str, 10, 10);
+};
+</script>
+</head>
+<body>
+
+<div lang="en" style="margin:20px; height:100px;">
+<canvas id="c1" width="400" height="50"></canvas>
+<script type="text/javascript">
+  test("c1");
+</script>
+</div>
+
+</body>
+</html>