Bug 1030206 - Update old webgl conformance test. Not supporting float rendering targets is now legal. r=kamidphish
authorWalter Litwinczyk <wlitwinczyk@mozilla.com>
Wed, 16 Jul 2014 14:25:36 -0700
changeset 215364 6471c4d6ffee987c17644ba71e8fcc074289e672
parent 215363 e6d756bc2ba72844536a9adf98796e11a0984dc1
child 215365 23c1ad8839928f17704b3dc02dddece6df89fb8b
push id3857
push userraliiev@mozilla.com
push dateTue, 02 Sep 2014 16:39:23 +0000
treeherdermozilla-beta@5638b907b505 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerskamidphish
bugs1030206
milestone33.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 1030206 - Update old webgl conformance test. Not supporting float rendering targets is now legal. r=kamidphish
content/canvas/test/webgl-conformance/conformance/extensions/oes-texture-float.html
content/canvas/test/webgl-conformance/failing_tests_android.txt
content/canvas/test/webgl-conformance/failing_tests_android_x86.txt
content/canvas/test/webgl-conformance/failing_tests_linux_mesa.txt
content/canvas/test/webgl-conformance/skipped_tests_android_x86.txt
--- a/content/canvas/test/webgl-conformance/conformance/extensions/oes-texture-float.html
+++ b/content/canvas/test/webgl-conformance/conformance/extensions/oes-texture-float.html
@@ -151,24 +151,20 @@ function runRenderTargetTest(testProgram
     gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, width, height, 0, gl.RGBA, gl.FLOAT, null);
     glErrorShouldBe(gl, gl.NO_ERROR, "floating-point texture allocation should succeed if OES_texture_float is enabled");
 
     // Use this texture as a render target.
     var fbo = gl.createFramebuffer();
     gl.bindFramebuffer(gl.FRAMEBUFFER, fbo);
     gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture, 0);
     gl.bindTexture(gl.TEXTURE_2D, null);
-    shouldBe("gl.checkFramebufferStatus(gl.FRAMEBUFFER)", "gl.FRAMEBUFFER_COMPLETE");
-    // While strictly speaking it is probably legal for a WebGL implementation to support
-    // floating-point textures but not as attachments to framebuffer objects, any such
-    // implementation is so poor that it arguably should not advertise support for the
-    // OES_texture_float extension. For this reason the conformance test requires that the
-    // framebuffer is complete here.
-    if (gl.checkFramebufferStatus(gl.FRAMEBUFFER) != gl.FRAMEBUFFER_COMPLETE)
+    if (gl.checkFramebufferStatus(gl.FRAMEBUFFER) != gl.FRAMEBUFFER_COMPLETE) {
+        debug("floating-point " + formatString + " render target not supported -- this is legal");
         return;
+    }
 
     var renderProgram =
         wtu.setupProgram(gl,
                          ["positionVertexShader", "floatingPointFragmentShader"],
                          ['vPosition'],
                          [0]);
     wtu.drawQuad(gl);
     glErrorShouldBe(gl, gl.NO_ERROR, "rendering to floating-point texture should succeed");
--- a/content/canvas/test/webgl-conformance/failing_tests_android.txt
+++ b/content/canvas/test/webgl-conformance/failing_tests_android.txt
@@ -1,9 +1,8 @@
-conformance/extensions/oes-texture-float.html
 conformance/extensions/oes-vertex-array-object.html
 conformance/glsl/functions/glsl-function-abs.html
 conformance/glsl/functions/glsl-function-faceforward.html
 conformance/glsl/functions/glsl-function-sign.html
 conformance/glsl/functions/glsl-function-smoothstep-float.html
 conformance/glsl/functions/glsl-function-step-float.html
 conformance/glsl/functions/glsl-function-step-gentype.html
 conformance/limits/gl-max-texture-dimensions.html
--- a/content/canvas/test/webgl-conformance/failing_tests_android_x86.txt
+++ b/content/canvas/test/webgl-conformance/failing_tests_android_x86.txt
@@ -1,5 +1,4 @@
 # Failures for our android x86 and arm emulator test environments.
 
-conformance/extensions/oes-texture-float.html
 conformance/programs/get-active-test.html
 conformance/textures/texture-npot.html
--- a/content/canvas/test/webgl-conformance/failing_tests_linux_mesa.txt
+++ b/content/canvas/test/webgl-conformance/failing_tests_linux_mesa.txt
@@ -1,3 +1,2 @@
 conformance/textures/texture-size-cube-maps.html
-conformance/extensions/oes-texture-float.html
 conformance/glsl/functions/glsl-function-sin.html
--- a/content/canvas/test/webgl-conformance/skipped_tests_android_x86.txt
+++ b/content/canvas/test/webgl-conformance/skipped_tests_android_x86.txt
@@ -1,8 +1,15 @@
+# OES-texture-float is failing on Android 2.3, but not Android 4.0 when
+# there is a way to differentiate these two slaves this should be removed
+# and updated as appropriately. The Android 2.3 slave is returning red
+# when it should be green. This is believed to be a driver bug and not
+# FF bug at the moment.
+conformance/extensions/oes-texture-float.html
+
 conformance/extensions/oes-vertex-array-object.html
 conformance/glsl/functions/glsl-function-abs.html
 conformance/glsl/functions/glsl-function-faceforward.html
 conformance/glsl/functions/glsl-function-sign.html
 conformance/glsl/functions/glsl-function-sin.html
 conformance/glsl/functions/glsl-function-step-float.html
 conformance/glsl/functions/glsl-function-step-gentype.html
 conformance/glsl/functions/glsl-function-smoothstep-float.html