summaryrefslogtreecommitdiff
path: root/image/test/reftest/gif
diff options
context:
space:
mode:
Diffstat (limited to 'image/test/reftest/gif')
-rw-r--r--image/test/reftest/gif/1bit-255-trans.gifbin0 -> 337 bytes
-rw-r--r--image/test/reftest/gif/1bit-255-trans.pngbin0 -> 1214 bytes
-rw-r--r--image/test/reftest/gif/ImageDocument.css16
-rw-r--r--image/test/reftest/gif/animation1a.gifbin0 -> 167 bytes
-rw-r--r--image/test/reftest/gif/animation2a-finalframe.gifbin0 -> 107 bytes
-rw-r--r--image/test/reftest/gif/animation2a.gifbin0 -> 167 bytes
-rw-r--r--image/test/reftest/gif/blue.gifbin0 -> 43 bytes
-rw-r--r--image/test/reftest/gif/comment.gifbin0 -> 68 bytes
-rw-r--r--image/test/reftest/gif/comment.pngbin0 -> 167 bytes
-rw-r--r--image/test/reftest/gif/delaytest.html41
-rw-r--r--image/test/reftest/gif/in-colormap-trans.gifbin0 -> 355 bytes
-rw-r--r--image/test/reftest/gif/in-colormap-trans.pngbin0 -> 237 bytes
-rw-r--r--image/test/reftest/gif/one-color-offset-ref.gifbin0 -> 69 bytes
-rw-r--r--image/test/reftest/gif/one-color-offset.gifbin0 -> 49 bytes
-rw-r--r--image/test/reftest/gif/out-of-colormap-trans.gifbin0 -> 355 bytes
-rw-r--r--image/test/reftest/gif/out-of-colormap-trans.pngbin0 -> 241 bytes
-rw-r--r--image/test/reftest/gif/red.gifbin0 -> 43 bytes
-rw-r--r--image/test/reftest/gif/reftest-stylo.list57
-rw-r--r--image/test/reftest/gif/reftest.list29
-rw-r--r--image/test/reftest/gif/small-background-size-2-ref.gifbin0 -> 807 bytes
-rw-r--r--image/test/reftest/gif/small-background-size-2.gifbin0 -> 572 bytes
-rw-r--r--image/test/reftest/gif/small-background-size-ref.gifbin0 -> 1076 bytes
-rw-r--r--image/test/reftest/gif/small-background-size.gifbin0 -> 991 bytes
-rw-r--r--image/test/reftest/gif/test_bug641198.html53
-rw-r--r--image/test/reftest/gif/tile-transform-ref.html12
-rw-r--r--image/test/reftest/gif/tile-transform.html12
-rw-r--r--image/test/reftest/gif/tiletest-ref.pngbin0 -> 282 bytes
-rw-r--r--image/test/reftest/gif/tiletest.gifbin0 -> 156 bytes
-rw-r--r--image/test/reftest/gif/transparent-animation-finalframe.gifbin0 -> 121 bytes
-rw-r--r--image/test/reftest/gif/transparent-animation.gifbin0 -> 527 bytes
-rw-r--r--image/test/reftest/gif/truncated-framerect-interlaced-ref.gifbin0 -> 927 bytes
-rw-r--r--image/test/reftest/gif/truncated-framerect-interlaced.gifbin0 -> 927 bytes
-rw-r--r--image/test/reftest/gif/truncated-framerect-ref.gifbin0 -> 929 bytes
-rw-r--r--image/test/reftest/gif/truncated-framerect-ref.html33
-rw-r--r--image/test/reftest/gif/truncated-framerect.gifbin0 -> 929 bytes
-rw-r--r--image/test/reftest/gif/truncated-framerect.html28
36 files changed, 281 insertions, 0 deletions
diff --git a/image/test/reftest/gif/1bit-255-trans.gif b/image/test/reftest/gif/1bit-255-trans.gif
new file mode 100644
index 0000000000..60273ba81d
--- /dev/null
+++ b/image/test/reftest/gif/1bit-255-trans.gif
Binary files differ
diff --git a/image/test/reftest/gif/1bit-255-trans.png b/image/test/reftest/gif/1bit-255-trans.png
new file mode 100644
index 0000000000..611480ac4c
--- /dev/null
+++ b/image/test/reftest/gif/1bit-255-trans.png
Binary files differ
diff --git a/image/test/reftest/gif/ImageDocument.css b/image/test/reftest/gif/ImageDocument.css
new file mode 100644
index 0000000000..b449810986
--- /dev/null
+++ b/image/test/reftest/gif/ImageDocument.css
@@ -0,0 +1,16 @@
+body {
+ background-image: url("chrome://global/skin/media/imagedoc-darknoise.png");
+ margin: 0;
+}
+
+body > :first-child {
+ display: block;
+ position: absolute;
+ margin: auto;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ background: hsl(0,0%,90%) url("chrome://global/skin/media/imagedoc-lightnoise.png");
+ color: #222;
+}
diff --git a/image/test/reftest/gif/animation1a.gif b/image/test/reftest/gif/animation1a.gif
new file mode 100644
index 0000000000..d328276545
--- /dev/null
+++ b/image/test/reftest/gif/animation1a.gif
Binary files differ
diff --git a/image/test/reftest/gif/animation2a-finalframe.gif b/image/test/reftest/gif/animation2a-finalframe.gif
new file mode 100644
index 0000000000..8d9c4aaf7d
--- /dev/null
+++ b/image/test/reftest/gif/animation2a-finalframe.gif
Binary files differ
diff --git a/image/test/reftest/gif/animation2a.gif b/image/test/reftest/gif/animation2a.gif
new file mode 100644
index 0000000000..07abf8d986
--- /dev/null
+++ b/image/test/reftest/gif/animation2a.gif
Binary files differ
diff --git a/image/test/reftest/gif/blue.gif b/image/test/reftest/gif/blue.gif
new file mode 100644
index 0000000000..f9dbeeea8e
--- /dev/null
+++ b/image/test/reftest/gif/blue.gif
Binary files differ
diff --git a/image/test/reftest/gif/comment.gif b/image/test/reftest/gif/comment.gif
new file mode 100644
index 0000000000..255cceb418
--- /dev/null
+++ b/image/test/reftest/gif/comment.gif
Binary files differ
diff --git a/image/test/reftest/gif/comment.png b/image/test/reftest/gif/comment.png
new file mode 100644
index 0000000000..89394ba186
--- /dev/null
+++ b/image/test/reftest/gif/comment.png
Binary files differ
diff --git a/image/test/reftest/gif/delaytest.html b/image/test/reftest/gif/delaytest.html
new file mode 100644
index 0000000000..58fb080f97
--- /dev/null
+++ b/image/test/reftest/gif/delaytest.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<head>
+<title>Delayed image reftest wrapper</title>
+</head>
+<body>
+<img id="image1">
+<script>
+// This loads a externally specified image, forces a draw (in case of
+// decode-on-draw), waits 100ms, and then triggers the reftest snapshot.
+// This allows the animation on the page to complete.
+//
+// Use as "delaytest.html?animation.png"
+//
+
+// Get the image URL from our URL
+var imgURL = document.location.search.substr(1);
+
+// Load the image
+var img = document.images[0];
+img.src = imgURL;
+img.onload = forceDecode;
+
+function forceDecode() {
+
+ // We need to force drawing of the image in an invisible context
+ var canvas = document.createElement("canvas");
+ var ctx = canvas.getContext("2d");
+ ctx.drawImage(img, 0, 0);
+
+ // We've force the decode. start the timer to trigger the reftest
+ startTimer();
+}
+
+function startTimer() {
+ const delay = 500;
+ setTimeout("document.documentElement.className = '';", delay);
+}
+</script>
+</body>
+</html>
diff --git a/image/test/reftest/gif/in-colormap-trans.gif b/image/test/reftest/gif/in-colormap-trans.gif
new file mode 100644
index 0000000000..48f5c7caf1
--- /dev/null
+++ b/image/test/reftest/gif/in-colormap-trans.gif
Binary files differ
diff --git a/image/test/reftest/gif/in-colormap-trans.png b/image/test/reftest/gif/in-colormap-trans.png
new file mode 100644
index 0000000000..08761dfe41
--- /dev/null
+++ b/image/test/reftest/gif/in-colormap-trans.png
Binary files differ
diff --git a/image/test/reftest/gif/one-color-offset-ref.gif b/image/test/reftest/gif/one-color-offset-ref.gif
new file mode 100644
index 0000000000..14a59ff477
--- /dev/null
+++ b/image/test/reftest/gif/one-color-offset-ref.gif
Binary files differ
diff --git a/image/test/reftest/gif/one-color-offset.gif b/image/test/reftest/gif/one-color-offset.gif
new file mode 100644
index 0000000000..e6d7c49322
--- /dev/null
+++ b/image/test/reftest/gif/one-color-offset.gif
Binary files differ
diff --git a/image/test/reftest/gif/out-of-colormap-trans.gif b/image/test/reftest/gif/out-of-colormap-trans.gif
new file mode 100644
index 0000000000..17e747c9b2
--- /dev/null
+++ b/image/test/reftest/gif/out-of-colormap-trans.gif
Binary files differ
diff --git a/image/test/reftest/gif/out-of-colormap-trans.png b/image/test/reftest/gif/out-of-colormap-trans.png
new file mode 100644
index 0000000000..8d3eb581a2
--- /dev/null
+++ b/image/test/reftest/gif/out-of-colormap-trans.png
Binary files differ
diff --git a/image/test/reftest/gif/red.gif b/image/test/reftest/gif/red.gif
new file mode 100644
index 0000000000..d3c32bae25
--- /dev/null
+++ b/image/test/reftest/gif/red.gif
Binary files differ
diff --git a/image/test/reftest/gif/reftest-stylo.list b/image/test/reftest/gif/reftest-stylo.list
new file mode 100644
index 0000000000..5567ca61db
--- /dev/null
+++ b/image/test/reftest/gif/reftest-stylo.list
@@ -0,0 +1,57 @@
+# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing
+# GIF tests
+
+# tests for bug 519589
+== 1bit-255-trans.gif 1bit-255-trans.gif
+== in-colormap-trans.gif in-colormap-trans.gif
+== out-of-colormap-trans.gif out-of-colormap-trans.gif
+
+# a GIF file that uses the comment extension
+fails == comment.gif comment.gif
+
+# a GIF file with a background smaller than the size of the canvas
+== small-background-size.gif small-background-size.gif
+== small-background-size-2.gif small-background-size-2.gif
+
+# a transparent gif that disposes previous frames with clear; we must properly
+# clear each frame to pass.
+random == delaytest.html?transparent-animation.gif delaytest.html?transparent-animation.gif
+# incorrect timing dependence (bug 558678)
+
+# test for bug 641198
+skip == test_bug641198.html test_bug641198.html
+# Disabled; see bug 1120144.
+
+# Bug 1062886: a gif with a single color and an offset
+== one-color-offset.gif one-color-offset.gif
+
+# Bug 1068230
+== tile-transform.html tile-transform.html
+
+# Bug 1234077
+== truncated-framerect.html truncated-framerect.html
+
+# webcam-simulacrum.mgif is a hand-edited file containing red.gif and blue.gif,
+# concatenated together with the relevant headers for
+# multipart/x-mixed-replace. Specifically, with the headers in
+# webcam-simulacrum.mjpg^headers^, the web browser will get the following:
+#
+# HTTP 200 OK
+# Content-Type: multipart/x-mixed-replace;boundary=BOUNDARYOMG
+#
+# --BOUNDARYOMG\r\n
+# Content-Type: image/gif\r\n
+# \r\n
+# <contents of red.gif> (no newline)
+# --BOUNDARYOMG\r\n
+# Content-Type: image/gif\r\n
+# \r\n
+# <contents of blue.gif> (no newline)
+# --BOUNDARYOMG--\r\n
+#
+# (The boundary is arbitrary, and just has to be defined as something that
+# won't be in the text of the contents themselves. --$(boundary)\r\n means
+# "Here is the beginning of a boundary," and --$(boundary)-- means "All done
+# sending you parts.")
+skip-if(B2G) HTTP == webcam.html webcam.html
+# bug 773482
diff --git a/image/test/reftest/gif/reftest.list b/image/test/reftest/gif/reftest.list
new file mode 100644
index 0000000000..75a0252b6d
--- /dev/null
+++ b/image/test/reftest/gif/reftest.list
@@ -0,0 +1,29 @@
+# GIF tests
+
+# tests for bug 519589
+== 1bit-255-trans.gif 1bit-255-trans.png
+== in-colormap-trans.gif in-colormap-trans.png
+== out-of-colormap-trans.gif out-of-colormap-trans.png
+
+# a GIF file that uses the comment extension
+== comment.gif comment.png
+
+# a GIF file with a background smaller than the size of the canvas
+== small-background-size.gif small-background-size-ref.gif
+== small-background-size-2.gif small-background-size-2-ref.gif
+
+# a transparent gif that disposes previous frames with clear; we must properly
+# clear each frame to pass.
+random == delaytest.html?transparent-animation.gif transparent-animation-finalframe.gif # incorrect timing dependence (bug 558678)
+
+# test for bug 641198
+skip == test_bug641198.html animation2a-finalframe.gif # Disabled; see bug 1120144.
+
+# Bug 1062886: a gif with a single color and an offset
+== one-color-offset.gif one-color-offset-ref.gif
+
+# Bug 1068230
+== tile-transform.html tile-transform-ref.html
+
+# Bug 1234077
+== truncated-framerect.html truncated-framerect-ref.html
diff --git a/image/test/reftest/gif/small-background-size-2-ref.gif b/image/test/reftest/gif/small-background-size-2-ref.gif
new file mode 100644
index 0000000000..b513c41aa2
--- /dev/null
+++ b/image/test/reftest/gif/small-background-size-2-ref.gif
Binary files differ
diff --git a/image/test/reftest/gif/small-background-size-2.gif b/image/test/reftest/gif/small-background-size-2.gif
new file mode 100644
index 0000000000..a5e2147678
--- /dev/null
+++ b/image/test/reftest/gif/small-background-size-2.gif
Binary files differ
diff --git a/image/test/reftest/gif/small-background-size-ref.gif b/image/test/reftest/gif/small-background-size-ref.gif
new file mode 100644
index 0000000000..1b656ce439
--- /dev/null
+++ b/image/test/reftest/gif/small-background-size-ref.gif
Binary files differ
diff --git a/image/test/reftest/gif/small-background-size.gif b/image/test/reftest/gif/small-background-size.gif
new file mode 100644
index 0000000000..8185eb71e8
--- /dev/null
+++ b/image/test/reftest/gif/small-background-size.gif
Binary files differ
diff --git a/image/test/reftest/gif/test_bug641198.html b/image/test/reftest/gif/test_bug641198.html
new file mode 100644
index 0000000000..46bdb0d47c
--- /dev/null
+++ b/image/test/reftest/gif/test_bug641198.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML>
+<html class="reftest-wait">
+<head>
+<title>Test for bug 641198</title>
+<link rel="stylesheet" href="ImageDocument.css">
+<style type="text/css" media=screen>
+ a.animated1 {
+ display: block;
+ width: 40px;
+ height: 40px;
+ background: url("animation1a.gif") no-repeat 0 0;
+ }
+
+ a.animated1 span {
+ position: absolute;
+ top: -999em;
+ }
+
+ a.animated2 {
+ display: block;
+ width: 40px;
+ height: 40px;
+ background: url("animation2a.gif") no-repeat 0 0;
+ }
+
+ a.animated2 span {
+ position: absolute;
+ top: -999em;
+ }
+</style>
+</head>
+<body onload="doTimeout()">
+
+<a id="animated" href="#" title="Animated"><span>Animated</span></a>
+
+<script>
+// We check whether changing the class will lead to the animation being
+// run from the beginning, even if the animation was already shown
+// before.
+var counter = 0;
+function doTimeout() {
+ if (counter == 4) {
+ document.documentElement.className = '';
+ } else {
+ document.getElementById("animated").setAttribute("class", "animated" + ((counter % 2)+1));
+ setTimeout(doTimeout, counter == 3 ? 500 : 250); // Wait a bit more for the last one, to prevent oranges
+ }
+ counter++;
+}
+</script>
+</body>
+</html>
+
diff --git a/image/test/reftest/gif/tile-transform-ref.html b/image/test/reftest/gif/tile-transform-ref.html
new file mode 100644
index 0000000000..5dac1a5bdf
--- /dev/null
+++ b/image/test/reftest/gif/tile-transform-ref.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=1068230
+-->
+<html>
+<head>
+ <title>Intermediate surface should be transformed correctly when tiling an image</title>
+</head>
+<body>
+<button style="margin: 10px; padding: 10px; border: none; background: url('tiletest-ref.png');"></button>
+</body>
+</html>
diff --git a/image/test/reftest/gif/tile-transform.html b/image/test/reftest/gif/tile-transform.html
new file mode 100644
index 0000000000..541ae6bbc4
--- /dev/null
+++ b/image/test/reftest/gif/tile-transform.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=1068230
+-->
+<html>
+<head>
+ <title>Intermediate surface should be transformed correctly when tiling an image</title>
+</head>
+<body>
+<button style="margin: 10px; padding: 10px; border: none; background: url('tiletest.gif');"></button>
+</body>
+</html>
diff --git a/image/test/reftest/gif/tiletest-ref.png b/image/test/reftest/gif/tiletest-ref.png
new file mode 100644
index 0000000000..b493899cc8
--- /dev/null
+++ b/image/test/reftest/gif/tiletest-ref.png
Binary files differ
diff --git a/image/test/reftest/gif/tiletest.gif b/image/test/reftest/gif/tiletest.gif
new file mode 100644
index 0000000000..7a04c9654a
--- /dev/null
+++ b/image/test/reftest/gif/tiletest.gif
Binary files differ
diff --git a/image/test/reftest/gif/transparent-animation-finalframe.gif b/image/test/reftest/gif/transparent-animation-finalframe.gif
new file mode 100644
index 0000000000..a55f92a813
--- /dev/null
+++ b/image/test/reftest/gif/transparent-animation-finalframe.gif
Binary files differ
diff --git a/image/test/reftest/gif/transparent-animation.gif b/image/test/reftest/gif/transparent-animation.gif
new file mode 100644
index 0000000000..b2895487bd
--- /dev/null
+++ b/image/test/reftest/gif/transparent-animation.gif
Binary files differ
diff --git a/image/test/reftest/gif/truncated-framerect-interlaced-ref.gif b/image/test/reftest/gif/truncated-framerect-interlaced-ref.gif
new file mode 100644
index 0000000000..ca9bf2fa71
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect-interlaced-ref.gif
Binary files differ
diff --git a/image/test/reftest/gif/truncated-framerect-interlaced.gif b/image/test/reftest/gif/truncated-framerect-interlaced.gif
new file mode 100644
index 0000000000..59709898bd
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect-interlaced.gif
Binary files differ
diff --git a/image/test/reftest/gif/truncated-framerect-ref.gif b/image/test/reftest/gif/truncated-framerect-ref.gif
new file mode 100644
index 0000000000..ab79a455b0
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect-ref.gif
Binary files differ
diff --git a/image/test/reftest/gif/truncated-framerect-ref.html b/image/test/reftest/gif/truncated-framerect-ref.html
new file mode 100644
index 0000000000..ef48b8a192
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<!-- Any copyright is dedicated to the Public Domain.
+ - http://creativecommons.org/publicdomain/zero/1.0/ -->
+<html>
+ <head>
+ <title>Bug 1234077 - Make sure GIFs still render correctly with a truncated frameRect</title>
+ <style type="text/css">
+ div, img {
+ padding: 0;
+ margin: 0;
+ border: 0;
+ overflow: hidden;
+ width: 200px;
+ height: 200px;
+ }
+
+ div img {
+ margin: 136px 0 0 136px;
+ }
+ </style>
+ </head>
+ <body>
+ <img src="truncated-framerect-interlaced-ref.gif" />
+
+ <div>
+ <img src="truncated-framerect-ref.gif" />
+ </div>
+
+ <div>
+ <img src="truncated-framerect-interlaced-ref.gif" />
+ </div>
+ </body>
+</html>
diff --git a/image/test/reftest/gif/truncated-framerect.gif b/image/test/reftest/gif/truncated-framerect.gif
new file mode 100644
index 0000000000..8febb2a748
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect.gif
Binary files differ
diff --git a/image/test/reftest/gif/truncated-framerect.html b/image/test/reftest/gif/truncated-framerect.html
new file mode 100644
index 0000000000..c1c5df6538
--- /dev/null
+++ b/image/test/reftest/gif/truncated-framerect.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<!-- Any copyright is dedicated to the Public Domain.
+ - http://creativecommons.org/publicdomain/zero/1.0/ -->
+<html>
+ <head>
+ <title>Bug 1234077 - Make sure GIFs still render correctly with a truncated frameRect</title>
+ <style type="text/css">
+ div, img {
+ padding: 0;
+ margin: 0;
+ border: 0;
+ width: 200px;
+ height: 200px;
+ }
+ </style>
+ </head>
+ <body>
+ <img src="truncated-framerect-ref.gif" />
+
+ <div>
+ <img src="truncated-framerect.gif" />
+ </div>
+
+ <div>
+ <img src="truncated-framerect-interlaced.gif" />
+ </div>
+ </body>
+</html>