Bug 641748 - Create a simulated GIF webcam, and test to make sure we actually get the second frame. r=jrmuizel
authorJoe Drew <joe@drew.ca>
Thu, 14 Jul 2011 14:47:45 -0400
changeset 72837 451154c37cb34de3a9298e6b89d9e0e19d6c6770
parent 72836 15af6861b21bf4434b030e45f6faaeda940a3c05
child 72838 4fc08ab607dba39c3dc07db634627c845ceeb0b7
push id20776
push usereakhgari@mozilla.com
push dateFri, 15 Jul 2011 12:13:35 +0000
treeherdermozilla-central@9349ae9094f6 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjrmuizel
bugs641748
milestone8.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 641748 - Create a simulated GIF webcam, and test to make sure we actually get the second frame. r=jrmuizel This also implicitly tests that we don't hit this bug, because it was an NS_ABORT_IF_FALSE, and that will be hit on debug reftest runs.
modules/libpr0n/test/reftest/gif/blue.gif
modules/libpr0n/test/reftest/gif/red.gif
modules/libpr0n/test/reftest/gif/reftest.list
modules/libpr0n/test/reftest/gif/webcam-simulacrum.mgif
modules/libpr0n/test/reftest/gif/webcam-simulacrum.mgif^headers^
modules/libpr0n/test/reftest/gif/webcam.html
new file mode 100644
index 0000000000000000000000000000000000000000..f9dbeeea8e084dc094038613454aeee24e52bfa6
GIT binary patch
literal 43
qc${<hbhEHbWMp7u_`txxAn_kaDE?$&00A8k0g_>0Vsc?*um%90_yvLh
new file mode 100644
index 0000000000000000000000000000000000000000..d3c32bae2512c7f7debd412b66dbb5923c495640
GIT binary patch
literal 43
oc${<hbhEHbWMp7u_`tyMp8*6Ef3kpS9S{MMVPIl%VPvod0G>VtY5)KL
--- a/modules/libpr0n/test/reftest/gif/reftest.list
+++ b/modules/libpr0n/test/reftest/gif/reftest.list
@@ -14,8 +14,31 @@
 
 # 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
 == test_bug641198.html animation2a-finalframe.gif
 
+# 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.")
+HTTP == webcam.html blue.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8302c3955cf66769a988a6b239e76e25cc515122
GIT binary patch
literal 187
zc%0MKb@C7Ob8!rc^!Ih=<#Nu?D@n~O(G96ANVQVP%uP&B)lbh%<K^Pza`$wzuuNoR
rU}X5f!0?{|1QdU=fN32N0g_>0Vsc?*u+}BdPzH(r#2Tur%gY4-;p8Ww
new file mode 100644
--- /dev/null
+++ b/modules/libpr0n/test/reftest/gif/webcam-simulacrum.mgif^headers^
@@ -0,0 +1,3 @@
+HTTP 200 OK
+Content-Type: multipart/x-mixed-replace;boundary=BOUNDARYOMG
+Cache-Control: no-cache
new file mode 100644
--- /dev/null
+++ b/modules/libpr0n/test/reftest/gif/webcam.html
@@ -0,0 +1,1 @@
+<img src="webcam-simulacrum.mgif">